2011-08-31 50 views
0

我真的很陌生,我创建了一个应用程序,它具有按钮,导致其他活动的数据被选择返回到主要活动的意图与额外。使用完成的好习惯()

当我完成数据收集活动时,我会调用finish()方法返回到我的主要活动。

用户可能希望重新访问信息收集活动以输入新数据,但是如果先前输入的数据在返回到活动时不在那里,则无关紧要。

在编写应用程序时,这被认为是好的或不好的做法?

感谢, 中号

回答

0

取决于你的应用。

如果您的应用程序需要像选项活动或日期这样的数据输入活动,您必须“保存”您活动的更改。 这里有一个简单的形式,这样做与Overryde方法:

/** 
* Method onSaveInstanceState. 
* @param outState Bundle 
*/ 
@Override 
protected void onSaveInstanceState(Bundle outState) { 
    outState.putBoolean("ISCALLSMS", isOnCallingSms); 
    super.onSaveInstanceState(outState); 
} 


/** 
* Method onRestoreInstanceState. 
* @param savedInstanceState Bundle 
*/ 
@Override 
protected void onRestoreInstanceState(Bundle savedInstanceState) { 
    if ((savedInstanceState != null) && (savedInstanceState.containsKey("ISCALLSMS"))){ 
     isOnCallingSms = savedInstanceState.getBoolean("ISCALLSMS"); 
    } 
    super.onRestoreInstanceState(savedInstanceState); 
}  

*这是我的应用程序的一个例子。 Yoy应该决定你需要保存哪些数据。还有其他方法来保存您的数据,这只是其中的一种。

在其他情况下,如果您的应用程序不需要保存数据,那么确定您是如何完成活动的