ViewPager 如何得到当前的Fragment (使用FragmentPagerAdapter)
2015-09-25 10:58
489 查看
使用FragmentPagerAdapter时,难免要在MainActivity 和 当前显示的Fragment间传递数据。但是FragmentPagerAdapter并没有给我们提供类似getCurrentFragment一类的API。
通过FragmentPagerAdapter源码,发现每次Fragment切换都会调用到FragmentPagerAdapter.setPrimaryItem 方法。这个方法里把一个Fragment设置为mCurrentPrimaryItem。 很明显,mCurrentPrimaryItem就是我们想得到的当前Fragment.那么我们只需要重载这个方法,把传入的Fragment记录下来即可。
XX
我们可以在Adapter里定义一个currentFragment成员
在外层Activity中,
通过FragmentPagerAdapter源码,发现每次Fragment切换都会调用到FragmentPagerAdapter.setPrimaryItem 方法。这个方法里把一个Fragment设置为mCurrentPrimaryItem。 很明显,mCurrentPrimaryItem就是我们想得到的当前Fragment.那么我们只需要重载这个方法,把传入的Fragment记录下来即可。
XX
我们可以在Adapter里定义一个currentFragment成员
public class XXPagerAdapter extends FragmentPagerAdapter{ Fragment currentFragment; @Override public void setPrimaryItem(ViewGroup container, int position, Object object) { currentFragment = (QipanFragment) object; super.setPrimaryItem(container, position, object); } }
在外层Activity中,
getFragmentPageAdapter().currentFragment
相关文章推荐
- php时间控制
- PHP简单实现断点续传下载的方法
- 运用Xdebug调试和优化PHP程序
- PHP官方Windows扩展资源索引
- PHP正则表达式 /i, /is, /s, /isU等
- php 发送 email
- php检测字符串是否含有重复或递增的字符
- PHP代码没有解释运行,代码输出到浏览器问题
- php 以图搜图
- php中国的垃圾问题
- FTP主动模式与FTP被动模式所需的端口
- Yii2登陆添加验证码
- php设计模式之抽象工厂模式
- 分享3个php获取日历的函数
- PHP代码优化之include
- 建立基于虚拟用户的VSftpd服务
- 分享3个php获取日历的函数
- PHP简单实现断点续传下载的方法
- php实现的Curl封装类Curl.class.php用法实例分析
- ThinkPHP进程计数类Process用法实例详解