Dae*_*ang 8 fragment android-recyclerview
在ViewHolder,我不能打电话getSupportFragmentManager.
我想在片段之间切换
我搜索了所有的谷歌页面.但我找不到它.
public static class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener{
public ImageView imgThumbnail;//img
public TextView tvspecies; //text
public ViewHolder(View itemView) {
super(itemView);
imgThumbnail = (ImageView)itemView.findViewById(R.id.img_thumbnail);
tvspecies = (TextView)itemView.findViewById(R.id.tv_species);
itemView.setOnClickListener(this);
}
@Override
public void onClick(View v) {/*?? ????? ????*/
Fragment fm=new NewsFragment();
FragmentTransaction transaction=fm.getFragmentManager().beginTransaction();
transaction.replace(R.id.Linearcontainer, fm);
transaction.addToBackStack(null);
transaction.commit();
}//onClick
}//ViewHolder
Run Code Online (Sandbox Code Playgroud)
小智 14
试试这个吧
public HorizontalProductAdapter(Activity context, List<RecycleIndividualProduct>data, FragmentManager fragmentManager){
inflater = LayoutInflater.from(context);
this.subActivityData = data;
this.fragmentManager=fragmentManager;
}
Run Code Online (Sandbox Code Playgroud)
并从您的活动或片段调用您的适配器
mAdapter = new HorizontalProductAdapter(getActivity(),allDeals,getFragmentManager());
Run Code Online (Sandbox Code Playgroud)
只需执行此操作,从实例化适配器的活动或片段传递 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);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3847 次 |
| 最近记录: |