我是Android编程的新手,并提出以下问题。
我有一个调用另一个活动(屏幕)的活动(屏幕)。我可以通过创建一个intext并使用putExtras从Activity2传回值。然后当我返回到我的main activity1然后我可以(onActivityResult)我可以从返回的intent中检索字符串值对。
问题1如果Activity2完成,如果垃圾收集器启动,我在那里创建的Intent可能会被释放的可能性是多少?或者Android在退出应用程序之前不会清除任何类似的内存。
问题2)如果我再回到Activity2并再次做一个“新意图.....”就是分配更多的内存,如果是这样,效率低下呢?“
问题3 - 是否有更好的方法将数据从被调用的活动传递回调用活动,或者只使用Intent和putExtras等?
由于 贝
答案 0 :(得分:2)
在您要发送数据的类中 -
Intent intent = new Intent(context,NextClass.class);
intent.putExtra("ACTIVITY_ID","Any value or variable" );
intent.putExtra("CUSTOMER_ID","Any Value or variable" );
startActivityForResult(intent, 0);
现在在Receiving类中,让我们说NextClass
Bundle extras=getIntent().getExtras();
String ACTIVITY_ID=extras.getString("ACTIVITY_ID");
String CUSTOMER_ID=extras.getString("CUSTOMER_ID");
通过使用此方法,我们可以轻松地将数据从一个活动传递到另一个活动......
答案 1 :(得分:1)
我的建议是。
如果您有使用过各种活动的数据,那么使用Intent从1活动到另一个活动来传递数据。创建全局级静态变量,然后通过应用程序访问该全局变量。
答案 2 :(得分:0)
您要在活动之间传递多少数据?字节,千字节或兆字节?
如果它只有字节或几千字节,那么这就是我的答案:
如果数据非常大,您可以将其保存到SD卡并在活动之间传递文件uri。