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币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!