过滤ListView,它是ViewPager片段的一部分

时间:2011-09-28 18:53:01

标签: android android-listview android-viewpager android-support-library

我最近将我的应用程序从使用Activites和TabHost转换为使用Android Compat Library for API v4中的Fragments和ViewPager 我能够修复/解决大多数问题但是无法使用setTextFilterEnabled方法在ListViews中过滤文本而保留以前的行为。

我的ViewPagerAdapter包含每个都有ListView的碎片。当用户在ViewPager中滑动时,我希望当前活动的Fragment的ListView在用户输入时过滤文本,就像我能够使用TabHost-Activity模型一样。目前,看起来第一个片段的Lis​​tView将正确响应,但如果我滑动到下一个片段并尝试过滤其ListView,过滤仍将适用于第一个。如果我滑过前两个然后过滤,结果是不确定的。当前活动的Fragment永远不会应用过滤器。有时相邻的片段会,有时不会。

我尝试通过添加自定义回调来解决这个问题,让我可以监控哪些片段当前可见,哪些片段是隐藏的。当一个片段作为ViewPager的主片段可见时,我将其ListView上的setTextFilterEnabled设置为true,并将所有其他片段设置为false。这似乎没有任何帮助(我证实我正确地为正确的碎片切换标志)。

我怀疑这需要与ViewPager进行某种更深层次的集成,但我无法弄清楚我需要连接什么。关于如何使这项工作的任何想法?如果需要,我很乐意使用ACL代码。

0 个答案:

没有答案