博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android fragmentstatepageradapter框架,Android FragmentStatePagerAdapter
阅读量:4475 次
发布时间:2019-06-08

本文共 1701 字,大约阅读时间需要 5 分钟。

我已经实现了类似于你拥有的东西 . 我像这样扩展了 FragmentPagerAdapter 类:

public class ContactsFragmentPagerAdapter extends FragmentPagerAdapter {

ActionBar mActionBar;

private List mFragments;

public ContactsFragmentPagerAdapter(FragmentManager fm, List fragments) {

super(fm);

mFragments = fragments;

}

@Override

public int getCount() {

return mFragments.size();

}

@Override

public Fragment getItem(int position) {

return mFragments.get(position);

}

public void setActionBar(ActionBar bar) {

mActionBar = bar;

}

}

注意我已经在构造函数中添加了一个参数来传递 Fragment 的 Fragment 对象 . 这样,此类的 getItem() 方法可以返回任何扩展 Fragment 或其任何子类的类,而不是像您所做的那样只返回一个特定的类 ArrayListFragment .

在 Activity 中,我实例化了我的 FragmentPagerAdapter 的子类,我已经传递了 Fragment 对象的列表:

类实例化FragmentPagerAdapter

public final class ContactManager extends Activity {

private ContactsFragmentPagerAdapter mAdapter;

private ViewPager mPager;

public ActionBar mActionBar;

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.contact_manager);

List fragments = new Vector();

fragments.add(Fragment.instantiate(this, ContactsListFragment.class.getName()));

fragments.add(Fragment.instantiate(this, GroupsListFragment.class.getName()));

mAdapter = new ContactsFragmentPagerAdapter(this.getFragmentManager(), fragments);

mPager = (ViewPager) findViewById(R.id.pager);

mPager.setAdapter(mAdapter);

mPager.setOnPageChangeListener(new OnPageChangeListener() {

@Override

public void onPageScrollStateChanged(int arg0) {}

@Override

public void onPageScrolled(int arg0, float arg1, int arg2) {}

@Override

public void onPageSelected(int arg0) {

mActionBar.getTabAt(arg0).select();

}

});

}

}

通过访问变量"fragments",您可以访问以前创建的 Fragment ,以便您可以运行该 Fragment 的方法 .

转载地址:http://nbips.baihongyu.com/

你可能感兴趣的文章
java 8 string_String.join() --Java8中String类新增方法
查看>>
java 布局教程_java布局学习(新)
查看>>
你真的会写Java吗?
查看>>
alibaba.fastjson.JSONObject 解析
查看>>
终于有人把Elasticsearch原理讲透了
查看>>
Java使用POI 读取和写入Excel指南
查看>>
shell脚本中各类括号的作用(小结)
查看>>
借用Snippet插件美化博客中的代码
查看>>
深入研究java.lang.Runtime类
查看>>
10677 我们仍未知道那天所看见的花的名字
查看>>
ScanTailor-ScanTailor 自动矫正图像歪斜
查看>>
UVA GCD - Extreme (II)
查看>>
iOS UIButton 图片文字上下垂直布局 解决方案
查看>>
Django forms 关于select和checkbox设置初始选中值
查看>>
Array.prototype.push.apply
查看>>
Flask Web开发读书笔记
查看>>
"仿matlab科学软件"项目准备
查看>>
wordpress 插件推荐
查看>>
抽象工厂
查看>>
AC自动机
查看>>