android fragment 刷新功能

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android fragment 刷新功能相关的知识,希望对你有一定的参考价值。

参考技术A 本文 介绍两点 已是fragment的切换 一是fragment刷新  

先说第一点 fragment的切换  

目前fragment在开发中应用越来越广泛 当然也非常方便 

而我们切换fragment 也有两中方式 

第一种是replace的方法进行的 这种方式要看运用场景 用起来很方便 但是个人感觉效果并不好 因为这种方式进行切换得话 首先他会remove掉当前的fragment,然后在new 一个新的fragment进行add,也就是说当前fragment中的所有东西都是重新加载的 所以个人不建议使用这种方式进行fragment的高频率切换 这种只适合fragment切换和使用次数比较少的情况 

第二种是show+hide 进行fragment切换 这种方式相比第一种可能会复杂一点 首先要建立几个fragment 开始事务 然后判断添加 举个例子 

1 创建fragment…… 

2 添加事务 android.app.FragmentTransaction ft = getFragmentManager().beginTransaction(); 

–#在添加之前先进行判断隐藏#– 

// 这是hide fragment 的方法 

onHideFragment(ft); 

3 判断添加 

if (homeFragment==null) 

homeFragment = new HomeFragment(); 

ft.add(R.id.content,homeFragment); 

else  

ft.show(homeFragment); 

 

4 判断隐藏 

if (homeFragment!=null) 

ft.hide(homeFragment); 

 

5 添加一个默认显示fragment 也就是你进入activity需要显示的那个 

好 此时你就完成了使用hide + show 进行fragment切换了

现在我们说第二点 就是fragment的刷新需求  

我们可能会需要fragment的刷新功能 例如说是我首页使用fragment 进行功能切换时 希望返回到之前的fragment可以刷新 或者返回到activity时 fragment也可以刷新 本人使用了 两种方法进行fragment的刷新 我想大部分应该都会使用第一种 返回activity时 fragment刷新 就是重写acvitity的onstart() 方法进行刷新fragment的数据 但是这是有弊端的 第一就是假如你使用了listview或者gridview 时会出现重复加载的情况 所以使用这种方法时 你就要进行清空数据并刷新适配器就可以避免了 

第二种 就是使用hide+show时 在fragment进行切换时 刷新fragment 此时会有这样一个这样的方法 onHiddenChanged(boolean hidden);看方法名 你也可以看出来 就是在hide有变化时使用 hidden参数是boolean 当hidden为true时表示fragment在hide 此时不必更新数据 当hidden为false时 他就不隐藏了 此时更新 

if (hidden) 

return; 

else  

list.clear(); 

getSellList(); 

 

list是要清空的 避免重复加载 

–#onHiddenChanged(boolean hidden); 这是fragment的方法哦 !!!#– 

本文 到此结束 希望对各位有所帮助 有问题可以评论区提出 大家一起进步

以上是关于android fragment 刷新功能的主要内容,如果未能解决你的问题,请参考以下文章

Android中Fragment怎样刷新UI

android Fragment跳转到Activity,再返回实现刷新Fragment(广播方法)

在 ViewPager 中刷新 Fragment 视图

无法在其适配器 Android 应用开发中调用 Fragment 的功能

Android 中使用RadioGroup+Fragment实现底部导航栏的功能

android fragment和activity的区别