2 a348639336 a348639336 于 2016.04.08 10:33 提问

android Viewpager中fragment筛选数据问题 3C

目前结构是actionbar中有个筛选按钮,实现类型筛选数据,整个外层是fragment,然后里面是viewpager+fragment组合形式,两个页面切换,要求点击筛选选择数据类型控制当前页的数据筛选?
我尝试过的方式:
在每个fragment中都调用actionbar中的筛选点击事件,进行数据筛选,但是发现只有第二个能筛选,在第一个页面筛选没反应而且这个时候第二个页面数据会筛选,经检查发现一直是在调用第二个页面的方法,分析是不是因为actionbar是在activitybase中,只能调用一次 ?
现在是在外层调用筛选点击事件,传递类型到fragment然后刷新fragment,但是现在思路有点乱,数据该怎么传,在哪里传?传过去怎么刷新?望大神详解.......

5个回答

bdmh
bdmh   Ds   Rxr 2016.04.08 11:00

估计你的事件都绑定到了第二个fragment,还是好好调试代码吧

CSDNXIAON
CSDNXIAON   2016.04.08 11:04

android Viewpager中fragment的数据刷新
Android-ViewPager+Fragment数据更新问题
android viewpager中的fragment 延迟加载数据
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

guohaipeng222
guohaipeng222   2016.04.08 17:48

fragment 的onRemuse();执行时,做个操作,根据这个动作调用相应的页面,比如在筛选按钮的那个页面定义一个变量,第一个Fragment展示时把变量赋值,当按钮被点击时判断变量值,调用第一个Fragment相应的方法。

u012215068
u012215068   2016.04.09 09:54

楼上正解,另外已有方法是,直接监听ViewPage的当前页,然后在ViewPage的滑动监听中回调修改外部筛选的变量值,用此判断需要筛选哪一个页面,
数据传递的话,你可以用回调,嫌麻烦的直接用广播,再不行就EventBus

lxk_1993
lxk_1993   Rxr 2016.04.09 10:55

可以在application里面设置一个静态变量 点击的时候修改这个变量的值.
然后再fragment的onresume()方法中 根据这个变量的值 进行数据筛选

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Android-ViewPager+Fragment数据更新问题
因为FragmentPagerAdapter内部存在缓存,因此调用notifyDataSetChanged()并不能够去更新Fragment的内容。 参考:http://www.devba.com/index.php/archives/5826.html http://stackoverflow.com/questions/7263291/viewpager-pageradapter-not-
viewpager+fragment 动态更新数据
viewpager+fragment 动态更新数据
Android ViewPager+Fragment数据传递和动态刷新成熟解决方案
Fragment的数据传递用起来很简单,但深究起来,其中的很多坑想必大家都已经历过。ViewPager的适配器如何动态的刷新数据也是个头疼的问题。把这俩货放在一起很常见,但却是坑中坑。 通过长时间的发现问题和解决问题,我们摸索出ViewPager+Fragment的成熟解决方案,现贡献给大家。
viewPager嵌套fragment的数据刷新
viewpager嵌套fragment的数据刷新问题的解决
viewpager和fragment中数据重复。
转载地址:http://my.oschina.net/buobao/blog/644699 activity中需要显示一个切换页显示3个不同的视图数据,这里需要使用viewpager+fragment实现切换。在fragment中需要在onstart或者onresume中初始化加载数据。但是viewpager在切换fragment时会调用下一个fragment的多个回调,比如: 在
ViewPager+Fragment缓存view的正确方式
在我将Eclipse中的项目转到AS时遇到一个问题,项目中使用了 ViewPager+Fragment 实现滑动页面,但是每次切换页面时都会通过 OnCreateView 方法新建一个view,这样很没必要,可以 缓存View 来减少不必要的开销。
ViewPager切换Fragment时ListView数据不更新
问题描述: 开发中常会遇见这样的场景:用一个ViewPager嵌套多个Fragment来切换页面展示数据,但是如果Fragment展示的数据是用ListView、GridView、RecyclerView等滑动控件来展示的,那么这样的Fragment经常会出现白屏,即ListView等控件没有刷新数据,导致出现白屏。(这个问题很早就出现过,当时做了下笔记,今天无意之间又遇见了,随手把之前的笔记贴
ViewPager 懒加载 导致的数据错乱问题
今天遇到了一个问题,ViewPager里面放了3个Fragment A B C。当切换到B时修改里面的值 让他不合法 再切到A再切回B,这时发现验证控件的范围已经异常。 由于用的懒加载,每次切换到一个页面都会重新加载,debug发现 我修改B时是第三条数据,而切换回来后我得到的Bean居然也是第三条数据(已经试过根据pos从list获取,或者根据传进来的bean结果都是不行)我给EditText
Viewpager+Fragment重复滑动后出现view重叠问题
viewpager+fragment这个组合用起来非常爽呀~~~ 但有时候会有点奇葩的问题需要注意 我就遇到了viewpager反复滑动,之前加载的fragment被重建了,但view没有delete掉,于是就view覆盖上去了,就出来各种奇葩的问题了。 想来想去,百度谷歌一齐上,大概有一些方法可以解决这个问题~~~ 1、viewpager.setOffscreenPage
ViewPager+Fragment+ListView重新加载后数据源重复问题的解决方法
今天在项目中遇到了一个问题,我的主页Activity是以ViewPager+Fragment进行构建的,其中有两个Fragment又包含了ListView,正常情况下这两个Fragment的界面如下: 但是当我从主页Activity跳转到另一个Activity,之后再返回主页Activity时,发现第一个包含ListView的Fragment的界面变成了下面这样: 很明显这是ListVi