2012-03-12 76 views
0

我目前正在编写一个Android应用程序,我是Java和Android的新手。活动结束后,活动及其公共变量会发生什么变化?

我打电话给startActivity()开始一个具有许多公共变量的活动。我想知道在活动结束后,在“onCreate”方法中赋值这些公共变量会发生什么,以及Activity的实例会发生什么。

活动通过调用新的活动完成。

我担心这种完成Activity的方法会导致内存泄漏,我应该调用startActivityForResult()并在onActivityResult()函数中调用新的Activity。

//更新 我的活动被称为是这样的:

Intent i = new Intent(this, Example.class); 
startActivity(i); 

建议吗?

干杯

回答

0

不要访问活动的变量直接。在活动使用意图之间传递变量。

当开始活动:

Intent intent = new Intent(CurrentActivity.this, NewActivity.class); 
intent.putExtra("Extra1", "some string or something else"); 
// set more data 
startActivity(intent); 

从活动返回时:

Intent intent = new Intent(); 
intent.putExtra("Extra1", "some string or something else"); 
//set data in intent as previous 
setResults(RESULT_OK, intent) 
finish(); 
+0

我开始这样的活性: 意图I =新意图(此,Example.class); startActivity(i); – nkhumphreys 2012-03-12 21:06:04

+0

请参阅我的编辑 – MByD 2012-03-12 21:10:27

+0

好的,我想我的问题指向一个有点有缺陷的设计。我想我是问我是否通过在每个活动结束时开始一个新的活动来移动我的应用程序,通过我的应用程序创建一个路径,例如Activity1调用Activity2,它调用Activity1全部通过意图调用Activity1,会发生什么到所有我称之为类的实例? – nkhumphreys 2012-03-12 21:13:55

相关问题