在我的应用程序中,活动A有一个项目列表 选择产品我去活动B,提供该项目的详细信息和一个按钮“选择此项目” 这将进入活动C. 在actvity C中显示该选择项目并且有一个按钮“选择更多项目” 点击这个我必须回到活动A,并重复相同的步骤。 当选择另一个项目时,激活,激活C应该显示两个项目。
所以我想从actvity C,我开始活动A,通过调用startActivityForResult()
并将结果添加到现有的项目列表中。
在这种情况下,我必须调用A的finish()
来重新计算值。
这是实施
由于“选择更多项目”可以在现实生活中多次点击,不会最终杀死并开始多次相同的活动 我已将启动模式设置为活动的单个任务
处理这种情况的最佳方法是什么
非常感谢你的时间和帮助
答案 0 :(得分:0)
我会将活动C中所选项目的标识符保存到首选项中。 因此,在活动C的简历中,我将检查保存的首选项中有多少,并将相应的数据加载到视图中。
答案 1 :(得分:0)
好吧,我建议您可以使用静态List或ArrayList并相应地工作。
1。)您可以使用公共静态列表,并可根据您的要求进行初始化,如下所示。
public static List<CartListClass> cartlist = new ArrayList<CartListClass>();
2。)您可以使用Acitivity_name.cartList
从任何课程访问此内容,并添加所需信息。
3。)现在,当您来到Activity C
时,您将获得静态列表中的所有必需信息,因此您可以从中获取并显示所需的详细信息。产品
并且,静态列表也会保留信息,当您从Activity A to Activity C
中选择其他产品或项目时,它将被添加到上一项或产品下方的列表中。
<强>更新强>
更好的方法是使用BroadCastReceiver
更新值或使用Interface
。