Android 不';在RecyclerView中的ViewHolder上不显示getSupportFragmentManager
在Android 不';在RecyclerView中的ViewHolder上不显示getSupportFragmentManager,android,android-fragments,android-recyclerview,fragment,Android,Android Fragments,Android Recyclerview,Fragment,在ViewHolder中,我无法调用getSupportFragmentManager 我想在片段之间切换 我搜索了所有的谷歌页面。但是我找不到它 公共静态类ViewHolder扩展了RecyclerView.ViewHolder实现了View.OnClickListener{ 公共图像视图imgthumbail;//img 公共文本视图;//文本 公共视图持有者(视图项视图){ 超级(项目视图); imgThumbnail=(ImageView)itemView.findViewById(R.
ViewHolder
中,我无法调用getSupportFragmentManager
我想在片段之间切换
我搜索了所有的谷歌页面。但是我找不到它
公共静态类ViewHolder扩展了RecyclerView.ViewHolder实现了View.OnClickListener{
公共图像视图imgthumbail;//img
公共文本视图;//文本
公共视图持有者(视图项视图){
超级(项目视图);
imgThumbnail=(ImageView)itemView.findViewById(R.id.img_缩略图);
tvspecies=(TextView)itemView.findViewById(R.id.tv_物种);
setOnClickListener(这个);
}
@凌驾
公共void onClick(视图v){/*버튼 실행했을때 실행부분*/
Fragment fm=新的新闻片段();
FragmentTransaction=fm.getFragmentManager().beginTransaction();
事务。替换(R.id.Linearcontainer,fm);
transaction.addToBackStack(空);
commit();
}//onClick
}//观众
只要这样做,
从实例化适配器的活动或片段中传递getSupportFragmentManager,并在适配器类构造函数中执行此操作
public ViewHolder(View itemView, FragmentManager fragmentManager) {
super(itemView);
imgThumbnail = (ImageView)itemView.findViewById(R.id.img_thumbnail);
tvspecies = (TextView)itemView.findViewById(R.id.tv_species);
this.fragmentManager = fragmentManager
itemView.setOnClickListener(this);
}
试试这个
public HorizontalProductAdapter(Activity context, List<RecycleIndividualProduct>data, FragmentManager fragmentManager){
inflater = LayoutInflater.from(context);
this.subActivityData = data;
this.fragmentManager=fragmentManager;
}
在我的recyclerview适配器类中,我执行了以下操作:
//recyclerView adapter global variable
private List<Data_Class> dataModel;
private Context mContext;
private FragmentManager FragManager;
//Recyclerview adapter constructor
public Recycler_Adapter_Class(Context appContext, List <Data_Class> data, FragmentManager fmanager) {
this.mContext = appContext;
this.dataModel = data;
this.FragManager = fmanager;
}
//In the activity or Fragment that calls the recyclerview adapter I did this:
Recycler_Adapter_Class RC = new Recycler_Adapter_Class(this, Data_Class_List, this.getSupportFragmentManager());
RecyclerView rView = (RecyclerView) findViewById(R.id.recycler_view);
rView.setAdapter(RC);
//recyclerView适配器全局变量
私有列表数据模型;
私有上下文;
私有碎片管理器碎片管理器;
//Recyclerview适配器构造函数
公共回收器_适配器_类(上下文appContext、列表数据、碎片管理器fmanager){
this.mContext=appContext;
this.dataModel=数据;
this.FragManager=fmanager;
}
//在调用recyclerview适配器的活动或片段中,我执行了以下操作:
Recycler_Adapter_Class RC=新的Recycler_Adapter_Class(此,数据_Class_列表,此.getSupportFragmentManager());
RecyclerView rView=(RecyclerView)findViewById(R.id.recycler\u视图);
rView.setAdapter(RC);
希望这对别人有帮助。干杯
通过构造然后替换来传递碎片事务。
publicsettingsadapter(上下文、列表设置列表、android.support.v4.app.FragmentTransaction ft){
this.context=上下文;
this.settingsList=settingsList;
this.ft=ft;
}
//使用构造函数调用SettingsAdapter
FragmentTransaction FragmentTransaction=getFragmentManager().beginTransaction();
settingsAdapter=新的settingsAdapter(getActivity(),settingsList,fragmentTransaction)`在此处输入代码`
找到答案了吗?
//recyclerView adapter global variable
private List<Data_Class> dataModel;
private Context mContext;
private FragmentManager FragManager;
//Recyclerview adapter constructor
public Recycler_Adapter_Class(Context appContext, List <Data_Class> data, FragmentManager fmanager) {
this.mContext = appContext;
this.dataModel = data;
this.FragManager = fmanager;
}
//In the activity or Fragment that calls the recyclerview adapter I did this:
Recycler_Adapter_Class RC = new Recycler_Adapter_Class(this, Data_Class_List, this.getSupportFragmentManager());
RecyclerView rView = (RecyclerView) findViewById(R.id.recycler_view);
rView.setAdapter(RC);