我在我的recyclerview项目上有这个场景:
一旦我点击了我的recyclerview中的一个项目,我想向另一个活动(比如DetailsActivity)显示该项目的详细信息,同时利用该recyclelerviewitem上的新活动视图转换(API 21)
通过在recyclerAdapter上的视图上使用itemclick侦听器找到一些方法,但我不确定可能由此产生的性能问题。
当然,我们可以将驻留在该recyclerview项目中的数据模型传递给通过intent bundle / parcelables的活动但是,我完全不知道如何将它与RxJava / RxAndroid一起使用。我使用过GreenRobot的事件总线,但由于我正在使用RxJava进行改造,不妨使用它。
有人能指出我正确的方向吗?
感谢。
答案 0 :(得分:1)
我以前做过这个,应该警告你,听起来不容易
第1步使用RX实现您自己的简单事件总线您可以访问此站点 - weddingpartyapp.com这是Kaushik Gopal创建简单的精彩教程但使用RxAndroid的高效EventBus。
或者你可以使用我here的代码(这是我一年前开始的一个废弃项目,但有一个有效的EventBus和你问题的答案)
第2步在实施EventBus之后,您必须为要通过公交车的所有手势创建对象(点按,双击,长按等)
查看此代码并实现您需要的所有对象code
第3步如果您复制了我的代码,请将此代码添加到您的RecyclerView.OnItemTouchListener实现中 -
public RecyclerItemClickListener(Context c) {
bus = ... //get instance of bus
gestureDetector = new GestureDetector(c, new GestureDetector.SimpleOnGestureListener() {
@Override
public boolean onSingleTapUp(MotionEvent e) {
bus.putValue(string, childPosition);
bus.publish(new BusEvents.RecyclerViewItemClick());
return true;
}
@Override
public void onLongPress(MotionEvent e) {
bus.publish(new BusEvents.TapEvent());
}
});
}
否则就用你创建的任何方法做同样的事情
希望有所帮助!
修改强>
weddingpartyapp.com不再可用。请使用Way Back Machine中的this链接获取教程。