在这里提到Jacob Tabok的文章,我在这里的片段的onCreateView中添加了OnItemTouchListener:
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_recyclerview, container, false);
mRecyclerView = (RecyclerView) view.findViewById(R.id.list_recylclerview);
mRecyclerView.setLayoutManager(new LinearLayoutManager(_context));
mRecyclerView.setItemAnimator(new DefaultItemAnimator());
mRecyclerView.addOnItemTouchListener(
new RecyclerItemClickListener(_context, new RecyclerItemClickListener.OnItemClickListener() {
@Override public void onItemClick(View view, int position) {
logger.i("onitemClick");
}
})
);
我完全不知道如何使用建议的做法来确定在Cardview中单击了哪个按钮。问题是整个cardview返回,而不是我点击如图所示的项目在这里。
如何确定单击了哪个按钮?我想避免这篇文章中的观点建议,因为我正在做很多零碎交易
您必须实现Activity-Fragment-RecyclerView.Adapter通信。(通过接口模式进行片段通信)
您应该将一个接口用于fragment-recyclerview.Adapter通信,而另一个接口用于activity-fragment通信。
有一个很好的例子(github),如何实现recyclerview,但没有片段
我的代码屏幕快照带有蓝色背景注释(待办事项),因此您可以按照代码流程进行操作,我使用LongClick代替Click,而我的ViewModel类是Friend / User,我有两个分离的Listview,因此当有人单击用户时,它将迁移到朋友列表,反之亦然。
如果我的解释有误,请纠正我,因为我也在学习Android。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句