我正在开发一个Android应用程序.如果我按后退按钮我的应用程序的状态应该保存.什么我应该使用保存状态..am困惑与所有这些onPause(),onResume()或onRestoresavedInstance()??? 我应该使用哪些来保存我的应用程序状态?例如,当我按退出按钮时,我的整个应用程序应退出我已使用完成()?
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
s1=(Button)findViewById(R.id.sn1);
s1.setOnClickListener(this);
LoadPreferences();
s1.setEnabled(false);
}
public void SavePreferences()
{
SharedPreferences sharedPreferences = getPreferences(MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putBoolean("state", s1.isEnabled());
}
public void LoadPreferences()
{
System.out.println("LoadPrefe");
SharedPreferences sharedPreferences = getPreferences(MODE_PRIVATE);
Boolean state = sharedPreferences.getBoolean("state", false);
s1.setEnabled(state);
}
@Override
public void onBackPressed()
{
System.out.println("backbutton");
SavePreferences();
super.onBackPressed();
}
Run Code Online (Sandbox Code Playgroud) 我有5个不同的屏幕有多个活动.如果在第一个屏幕和其他屏幕中按下后退键,我应该如何处理?finish()和System.exit()不工作..如果按下后退按钮,我该怎么办才能退出我的应用程序?以下编码不起作用?请建议我退出具有多个屏幕的应用程序
public boolean onKeyDown(int keyCode, KeyEvent event)
{
if (keyCode == KeyEvent.KEYCODE_BACK)
{
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(
this);
new AlertDialog.Builder(this) .setMessage("Are you sure you want to exit?")
.setCancelable(true)
.setPositiveButton("Yes", new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface hi, int dd)
{
Intent exitIntent = new Intent(Mapper.this,SplashActivity.class);
exitIntent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP|Intent.FLAG_ACTIVITY_CLEAR_TOP);
SplashActivity.mHandler.sendEmptyMessage(0);
startActivity(exitIntent);
}
}
)
.setNegativeButton("Cancel", new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface hi, int dd)
{
}
}
);
AlertDialog alertDialog = alertDialogBuilder.create();
// show it
alertDialog.show();
//AlertDialog alert1 = alt_bld.create();
//alert1.setTitle("EXIT");
//alert1.show();
return …Run Code Online (Sandbox Code Playgroud)