情况
我的应用中有3项活动:
- 活动A - 显示传入消息列表和两个操作:
- 活动B - 显示新消息的可能收件人列表
- 活动C - 启用用于使用所选收件人撰写新邮件的UI
醇>
新消息的工作流程操作
- A开始B
- 在B用户中选择收件人
- B启动C,收件人身份识别为额外提供
- 在C中创建新消息
- C开始A
- A通知用户已发送消息
醇>
回复操作的工作流程
- A直接启动C,并将收件人标识作为意图额外提供
- 没有这样的步骤
- 没有这样的步骤
- 在C中创建新消息
- C开始A
- A通知用户已发送消息
醇>
如您所见,工作流程非常相似。
我不喜欢这个?
- 在步骤5中重新创建活动A.
- 在决定是否显示“已发送消息”吐司时,必须区分进入A和从C返回
醇>
我对如何解决这个问题的看法
选项1 - 活动和startActivityForResult
- 我想使用
startActivityForResult
启动活动C
- 但是,活动B似乎有时会阻碍 - 请参阅新消息的工作流程
- 不知道如何处理此活动中间问题
选项2 - 片段和startActivityForResult
- 如何将B和C合并为一个活动,我们称之为D,
- 在D中有两个片段,让我们称它们为FB和FB,其功能与相应的活动B和C相同
- 然后我每次都会通过
startActivityForResult
从A开始
- 基于提供给D的额外意图可以决定是否显示片段FB或显示片段FC
我应该选择哪种方法?请建议。