我的应用程序有一个活动和三种类型的片段。如何从片段中断开工具栏操作Android
MainActivity
有ToolBar
,片段将自己的操作添加到此ToolBar
- 因此片段没有自己的ToolBar
。
- (A)片段是
formFragmet
与EditText
,CheckBox
,Spinner
,日期 和时间字段。它在ToolBar
中有更新 这些字段,当用户更改其中的某些内容时将采取相应措施。 - (B)片段是
ListFragment
,它具有记录列表 - 它不需要在ToolBar
中执行操作。 (C)片段是可包含(A) 片段和(B)片段或标签 (ViewPager
)中的任何其他组合的标签片段。TabbedFragment
并不需要在ToolBar
任何行动,但如果FormFragment
(A)是在当前标签页,它 显示该FormFragment
的行动,所以没关系,它 工作正常。
问题是这样的:
当用户选择从ListFragment
(B)下一个画面的记录被FormFragment
(A),并给用户的字段改变值。之后,用户从ToolBar
(更新)中选择一个操作,并更新表单。
成功更新后,用户然后返回(在接触由它弹出BackStack
活动添加ToolBar
的箭头,示出了ListFragment
)至ListFragment
(B)和用户在列表中选择另一个项目。另一个(新)FormFragment
用字段中的不同数据打开。
用户改变这种形式的东西,并按下工具栏中的更新动作。
更改不保存!原因在于此(新)formFragment
中的ToolBar
的动作仍然附加到先前的FormFragment
???
有没有人有这个问题?
有没有办法从片段中分离动作?
我猜想Android会在创建时将工具栏中的新动作设置为新的片段。但显然这不是那样做的。
如果有人可以帮忙请给我。
P.S. 如果需要,我会提供部分代码。
在此先感谢。