我正在尝试实现一个轻扫以解除RecyclerView中的操作,但是当我在ViewHolder中的任何View上设置OnClickListener时,它会覆盖该视图上的所有OnTouch事件.
我可以放弃OnClickListener并处理TouchListener中的所有点击,但如果我在RecycleView的子视图中有多个按钮,那将是很多代码,这看起来不是正确的方法.
在我的RecyleView中我设置了Swipe以解除侦听器(类似于此):
setOnTouchListener(touchListener);
setOnScrollListener(touchListener.makeScrollListener());
Run Code Online (Sandbox Code Playgroud)
它在ListView中工作,但在RecycleView中,OnClickListener阻止OnTouchListner事件.
ViewHolder视图的布局示例.
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/card_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="72dp"
android:descendantFocusability="blocksDescendants">
<ImageView
android:id="@+id/keep_icon"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_centerInParent="true"
android:src="@drawable/ic_received" />
Run Code Online (Sandbox Code Playgroud)
在RecyclerView.Adapter中充气:
@Override
public ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
View v = mInflater.inflate(R.layout.push_card_view_compat, viewGroup, false);
return new ViewHolder(v, onClickListener, onKeepListener);
}
Run Code Online (Sandbox Code Playgroud)
ViewHolder:
public ViewHolder(final View itemView,
final OnViewHolderClickListener onClickListener,
final OnKeepListener onKeepListener) {
super(itemView);
keepButton = (ImageView) itemView.findViewById(R.id.keep_icon);
itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
onItemClickListener.onClick(getPosition(), itemView);
}
});
keepButton.setOnClickListener(new View.OnClickListener() {
@Override
public …Run Code Online (Sandbox Code Playgroud) 我想为我的模拟器设置自定义屏幕密度.
我打开AVD经理.
右键单击虚拟设备.
在磁盘上显示.
打开config.ini
设置"hw.lcd.density = 200"
当我启动模拟器时它显示错误:qemu:可用的lcd密度是:120,160,213,240,280,320,360,400,420,480,560,640
是否可以为仿真器使用自定义密度?我可以在真实设备上或genymotion上进行吗?
我想手动将抽屉图标从汉堡设置为箭头,反之亦然,不仅在拖动抽屉时,是否可能?我正在使用支持库appcompat-v7:21.
另外我找不到android.support.v7.app.ActionBarDrawerToggle的源代码,这会有所帮助.
android android-appcompat android-actionbar android-5.0-lollipop