在另一个片段中添加数据并将其保存在先前片段的recyclerview中的最佳方法是什么?

时间:2019-04-07 21:36:11

标签: android android-fragments android-recyclerview sharedpreferences android-dialogfragment

我正在开发一项功能,其中正在注册用户的多个数据项(例如名字,姓氏和电话号码) 现在,当我单击带有添加用户按钮的片段A时,我将看到另一个片段或模态,例如:

Fragment A -> Fragment B 

现在片段B(或模式片段)具有编辑文本字段和一个保存按钮。我在编辑文本中添加了内容,例如名字,姓氏和电话号码,然后单击“保存”,我打算保存数据并将其传递到上一个片段(存在添加用户按钮的地方),以便

 Fragment B (on save data)  -> Fragment A (gets saved data)

现在,我想在片段A的recyclerview中显示此保存的数据,以使通过的第一个条目显示为第一项(带有用户的名字,姓氏和电话号码),第二个条目显示为第二个条目回收者视图中的项目等)(无限制)。 现在,我的问题是,执行此操作的理想方法是什么?另外,我可以在github上参考任何示例。 我最初计划将对话框片段显示为用于编辑文本条目的全屏模式,但是我不知道这是理想的方法。另外,如何在上一个屏幕中保存项目而不用新条目覆盖它们?说如果我为用户A添加凭据,我不希望将其替换为用户B的凭据,除非我要编辑用户A的凭据,等等。我希望它们都分别显示在另一个下方。任何想法如何去做或任何代码示例/项目/库将大有帮助! 提前致谢! 附言:就我而言,对于多个用户条目,共享首选项是否是在本地保存数据的最佳方法?

2 个答案:

答案 0 :(得分:0)

建议在片段之间进行通信的方法是创建一个共享的ViewModel对象。

这是来自Developer.android.com的链接:

Communicate with other fragments | Android Developers

答案 1 :(得分:0)

我找到了此链接,尽管如此,我将继续努力。它讨论了两种方法,一个接口(我已经知道)和一个视图模型。

它具有一个列表和详细信息屏幕,与您所需要的类似。

fragments