【发布时间】:2015-06-16 11:58:28
【问题描述】:
我正在将我的应用程序的 ListView 转换为 RecyclerView。在 ListView 上,实现 OnClickListener 非常容易,但在 RecyclerView 中,我们必须在适配器中实现。当用户点击一个项目时,我想打开一个新的片段。为此,我必须在我无法做到的适配器中调用 FragmentManager。 这是我的 RecyclerAdapter 代码:
public ListItemViewHolder(View itemView) {
super(itemView);
title = (TextView) itemView.findViewById(R.id.title);
description = (TextView) itemView.findViewById(R.id.description);
itemView.setOnClickListener(this);
}
@Override
public void onClick(View v) {
//Call FragmentManager and add Fragment to it.
}
}
那么,如何调用 FragmentManager 并在其中添加 Fragment。有没有比这更好的方法,比如发送广播或任何其他方法。
【问题讨论】:
-
冒泡事件到 Recycler.Adapter(现在它在持有者中)并为它设置一些监听器(例如创建 addapter 的片段) - 如何做到这一点?它在这里被描述了很多次
-
@Selvin 我知道如何在活动或片段中调用 FragmentManager,但它在适配器中给了我错误