慕婉清Hl
2019-09-07 18:19
视频中是在getitem中创建的gragment,如果我像添加不同的fragment应该怎样写?
TabFragment fragment = TabFragment.newInstance(mTitles.get(i)); return fragment; 这样只是换了Fragment的标题,如果不同布局的Fragment应该怎样写? 对应的 public Object instantiateItem(@NonNull ViewGroup container, int position) { Fragment fragment = (Fragment) super.instantiateItem(container, position); mFragment.put(position, fragment); return fragment; }这个方法又怎样写? 自己动手改了一下不对
个人想法是,如果你想添加不同的fragment,肯定有不同的布局,所以一个fragment类是不够的,你可以将你创建的不同的fragment类实例化后添加到一个列表list中,然后再重写getItem方法时 return list.get(position)
前面说又问题 如果你想要适配不同的xml的话,在使用databinding的情况下,需要提前定义。否则就会报错。
类似于这样
我知道了 你要在new的时候 或者 初始化的时候 传入布局资源id 然后inflate使用这个id就可以了
我也想知道
ViewPager+Tab特效实现微信主界面
6387 学习 · 35 问题
相似问题