android - 将项目添加到其他 Activity 中的 RecyclerView
问题描述
我正在开发一个简单的应用程序,但我被 Android 设计架构困住了。在我的主要活动中,我有一个显示项目列表的 RecyclerView。当我单击主 Activity 中的浮动操作按钮时,将启动一个新 Activity(输入 Activity),其中必须向 RecyclerView 添加一个新项目。
做这个的最好方式是什么?
- 我可以与输入 Activity 共享主 Activity 的 ViewModel。但是当我向这个共享的 ViewModel 添加一个项目时,RecyclerView 不会自动更新。
- 我可以在输入活动中创建一个结果意图。但是不可能在这个 Intent 中包含一个新的 Item() 对象。
由于我是 Android 应用程序开发的新手,我不知道该怎么做。
解决方案
- 在 sqlite 中保存 Input 活动的数据。
- 在共享首选项上保存一个布尔标志,指示数据已更改。您可以使用另一个整数(或字符串,取决于您的实现)来保存新添加的输入的 sqlite 主键。
- 退出输入活动
- 在 Main 活动的 onResume() 内部,检查是否添加了数据,如果添加,则获取其 id 和值。
推荐阅读
- git - 有没有一种简单的方法可以从 R 推送提交
- sql - 如何在列表中选择名称?
- sql - 如何克服 SQL Server 2008 中 256 个字符的最大字符串长度
- javascript - Javascript:如何将具有许多键值对的对象列表转换为一个大的嵌套对象?
- java - 如何在列表java中找到匹配字符串的索引?
- powerbi - 从 power bi 服务连接到 azure sql 数据库(或 azure datawarehouse、azure SSAS)
- xamarin - Xamarin.Forms 中的 Facebook 受众网络
- django - 密钥加密,前端后端问题
- facebook - 如何在没有经过审核的 Facebook 应用程序的情况下检索 Instagram 电视 (IGTV) 视频的缩略图?
- flutter - 没有为“Rx”类型定义“fromSnapshot”方法