2014-09-10 88 views
-1

找到每个元素我有一个使用4个标签Android应用程序:findElementById在每一个标签

Registry | Delivery | Invoice | Note 

他们每个人在“容器”活动加载的片段。

在ContainerActivity中我有一个保存按钮,当我点击它时,我想保存标签中的所有内容。 为此我使用findElementById(R.id.myElementName)

做一些调试我注意到,这个技巧只适用于加载和预加载的片段:如果我在注册表片段中,我只能“查找”RegistryFragment和DeliveryFragment中的元素,而不是InvoiceFragment中的元素。

如何获得每个片段的每个元素?

解决

感谢@Okas: 使用viewPager.setOffscreenPageLimit(3);(因为我有最多3个标签不包括一个我渲染)使可能在我的活动每一个片段内到达每一个元素。

+1

为什么在创建选项卡时,不会在活动中保存对每个片段的引用? – 2014-09-10 11:00:06

回答

1

findElementById未找到某些片段的元素,因为这些片段尚未创建或已被销毁。 您应该使用单独的数据对象来保存重要数据,并让片段更新这些对象,或者尝试增加ViewPager offScreenPageLimit,以便片段不被破坏(这会增加内存占用量)。

+0

设置offScreenPageLimit(3)诀窍!谢谢!! – Luca 2014-09-10 12:28:44

相关问题