【发布时间】:2018-08-21 12:51:52
【问题描述】:
我得到了一个RecyclerView,我想出了如何在项目被点击时突出显示它们,并且就像他们告诉here 一样。
但这会在被点击后突出显示该项目。我想在普通的ListView 中有类似的东西。因此,单击时应突出显示该项目。这就是我改用OnTouchListener 的原因。
@Override
public boolean onTouch(View v, MotionEvent event) {
int adapterPosition = getAdapterPosition();
if (adapterPosition == RecyclerView.NO_POSITION) return false;
adapter.notifyItemChanged(adapter.getSelectedPos());
adapter.setSelectedPos(adapterPosition);
adapter.notifyItemChanged(adapter.getSelectedPos());
if(event.getAction() == MotionEvent.ACTION_UP){
clicks.onItemSelected(adapterPosition);
return true;
}
return false;
}
但我的问题是,我还想知道用户何时向上移动手指,这样我可以在点击它时做我想做的事。但不幸的是,这不起作用。我怎样才能做到这一点?
【问题讨论】:
-
你尝试使用选择器了吗?
-
你可以管理按下和聚焦状态
-
你需要像这样写同样的代码。 stackoverflow.com/a/51945396/3946958
-
@quicklearner 我真的不明白它是如何工作的。
标签: android android-recyclerview ontouchlistener