繁体   English   中英

Android:使用ViewPager时,保存每个片段中每个视图的片段状态/内容

[英]Android:Saving Fragment State/contents of each views in each Fragment when using ViewPager

我真的非常需要这方面的认真帮助。 我正在创建一个使用PagerAdapteractivity创建Fragments的android应用。 根据运行需要在运行时创建的不同片段由不同的视图组成。 在上一个片段中,我创建了一种"Submit button" ,单击该"Submit button"可以从所有片段的每个视图(如EditText )中获取用户输入的值。

我正在使用以下命令来获取视图(上述按钮clicklistener int):

EditText e = (EditText) (getActivity().findViewById(i));

但是除了最后两个片段之外,它没有使用该ID获取视图。 因此,我假设这是在该活动中仅保存最后两个片段的状态。 那么,如何保存活动中所有片段的'view states'

并且不是这样,当在Fragment中创建视图并添加到其布局中时,该视图也添加到了主活动布局中吗? 我以错误的方式理解它吗?请让我知道。

为了简化它,我的问题是:

我们如何将用户输入的内容保存在使用ViewPager创建的Fragments动态创建的EditText中(以便以后可以访问)?

当您将片段添加到FragmentPagerAdapter时(假设您尚未编写自定义寻呼机),它将被添加到FragmentManager。 片段管理器与活动生命周期无关,因此它保留了片段状态。

如果您在这里查看: http : //code.google.com/p/ratebeerforandroid/source/browse/trunk/JakeWharton-ActionBarSherlock/library/src/android/support/v4/app/FragmentPagerAdapter.java?spec=svn42&r = 42

您可以了解其工作原理。 如果要为另一个会话保存片段状态,则需要拉回每个片段(getItem)并使用onSaveInstanceState或编写自己的自定义函数

希望能有所帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM