没有合适的资源?快使用搜索试试~ 我知道了~
Android开发中如何解决Fragment +Viewpager滑动页面重复加载的问题
1 下载量 158 浏览量
2021-01-20
10:02:21
上传
评论
收藏 50KB PDF 举报
温馨提示
试读
1页
前言 之前在做一个Viewpager上面加载多个Fragment时总会实例化已经创建好的Fragmnet对象类似 viewPager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) { @Override public Fragment getItem(int position) { switch(position){ case 0: fragments=new Fragmnet01(); break;
资源推荐
资源详情
资源评论
Android开发中如何解决开发中如何解决Fragment +Viewpager滑动页面重复滑动页面重复
加载的问题加载的问题
前言前言
之前在做一个Viewpager上面加载多个Fragment时总会实例化已经创建好的Fragmnet对象类似
viewPager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) {
@Override
public Fragment getItem(int position) {
switch(position){
case 0:
fragments=new Fragmnet01();
break;
case 1:
fragments=new Fragmnet02();
break;
.....
}
return fragments;
}
@Override
public int getCount() {
return listTabs.size();
}
});
其实仔细想一下,这样是很不合理的,首先你一直实例化对内存是一种浪费另外Viewpager具有预加载性当我们加载某一个
Fragmnet时它就会把它的左边和右边都会加载(开头和结尾例外。)所以为了防止重复加载浪费资源,我们可以使用一个对
象数组来加载fragment,当每次位置为空的时候我们就可以在该位置上面加载一个布局具体代码
//定义一个对象数组并给定长度
fragments=new MyFragment[listTabs.size()];
viewPager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) {
@Override
public Fragment getItem(int position)
{
//在这里判断如果Fragmnet[position]当前页面没有加载的话我们再次在上面加载
if(fragments[position]==null){
//这里只是写一个构造方法把值传到fragment里面
MyFragment my = MyFragment.getInstance(listTabs.get(position).getId());
fragments[position]=my;
}
return fragments[position];
}
@Override
public int getCount() {
return listTabs.size();
}
});
在fragment里面当然你也可以用bundler来传值。
public static MyFragment getInstance(int id){
MyFragment myFragment=new MyFragment();
Bundle bundle=new Bundle();
bundle.putInt("id",id);
myFragment.setArguments(bundle);
return myFragment;
}
以上所述是小编给大家介绍的Android开发中如何解决Fragment +Viewpager滑动页面重复加载的问题 ,希望对大家有所帮
助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
您可能感兴趣的文章您可能感兴趣的文章:Android使用TabLayou+fragment+viewpager实现滑动切换页面效果Android仿淘宝详情页面viewPager滑
动到最后一张图片跳转的功能微信浏览器弹出框滑动时页面跟着滑动的实现代码(兼容Android和IOS端)Android viewpager
在最后一页滑动之后跳转到主页面的实例代码Android应用中利用ViewPager实现多页面滑动切换效果示例Android仿今日头条
滑动页面导航效果Android编程实现ViewPager多页面滑动切换及动画效果的方法Android使用Fragment打造万能页面切换框架
Android中TabLayout结合ViewPager实现页面切换效果Android中使用TabHost 与 Fragment 制作页面切换效果Android实现页
面滑动切换动画
资源评论
weixin_38603219
- 粉丝: 5
- 资源: 953
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功