问题描述
||
我的main.xml文件只是虚拟的。我想根据情况开始不同的活动。如果在共享首选项文件中找到了密码,则应启动登录活动,而如果未找到密码,则应启动配置活动。它工作正常,但是当我按键盘上的返回键时,将显示主要活动(我的意思是黑屏,因为没有任何内容)如何避免这种情况?
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
prefs = getSharedPreferences(preffilename,MODE_PRIVATE);
final String password = prefs.getString(\"password\",null);
if(password == null)
{
Intent i = new Intent(getApplicationContext(),Configuration.class);
startActivity(i);
}
else
{
Intent i = new Intent(getApplicationContext(),Login.class);
startActivity(i);
}
}
解决方法
在调用
startActivity()
之后从主活动中调用finish()
,这将从堆栈中删除主活动。
, 按下后退按钮时您有什么期望?您可能希望将这些代码放在onResume()中,以便在将主活动从堆栈中带回时总是调用它。