共用fragment可以在所使用的fragment里成员变量private int TYPE; 生成构造方法
Context context;public Fragment_ticket(int TYPE, Context context) { 就可以在activity里通过new Fragment_ticket(1, this);时 传入定义的类型和this(上下文),构建不同的fragment,添加到集合,然后设置给自定义的FragmentPagerAdapter 。
this.TYPE = TYPE;
this.context = context;
}
共用adapter,是同样的道理,设置成员变量即要加载的item布局是哪个,private int ITEM_TYPE ; 生成构造方法,在getView方法里判断加载哪种item布局,if(view==null){ 即ITEM_TYPE==1时加载购物券可以使用的布局,ITEM_TYPE==0时加载不可使用的布局,布局的背景图片不同,布局不同。
//可以使用 1 不可用 0 过期 2
if(ITEM_TYPE==1){
view = mInflater.inflate(R.layout.item_ticket_canuse,viewGroup,false);
vh = new ViewHolder();
vh.tMoney = (TextView) view.findViewById(R.id.item_ticket_money);
vh.tType = (TextView) view.findViewById(R.id.item_ticket_type);
vh.tRange = (TextView) view.findViewById(R.id.item_ticket_range_tv);
vh.tExpiryDate = (TextView) view.findViewById(R.id.item_ticket_expirdDate_tv);
}else if(ITEM_TYPE==0||ITEM_TYPE==2){ .......}
–>路要一步一步走,记住自己走过的路,不再犯同样的错误,才是真正的成长!欢迎指点、交流。<–

本文介绍了一种在Android应用中复用Fragment和Adapter的方法,通过传递类型参数和上下文来构建不同形态的Fragment,并利用Adapter加载不同类型的item布局。
1661

被折叠的 条评论
为什么被折叠?



