我有MainActivity和CurrencyActivity。 在MainActivity,我称之为CurrencyActivity:
item.validation = validation.on(item);
所以,我想要的是当我留在CurrencyActivity时,如果用户按下后退按钮,CurrencyActivity将在后台运行并返回MainActivity。 当用户按下后退按钮时,我尝试使用这个:
public void onClick(View arg0) {
Intent intent = new Intent(NewMainActivity.this, CurrencyActivity.class);
//intent.addFlags(Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT);
startActivity(intent);
}
但它不会返回MainActivity。
答案 0 :(得分:1)
在背压功能中使用这样的代码...不要调用finish()
@Override
public void onBackPressed() {
Intent intent = new Intent(CurrencyActivity.this, NewMainActivity.class);
startActivity(intent);
}
答案 1 :(得分:0)
您可以使用:for API level 5
来处理此问题@Override
public void onBackPressed() {
// your code.
}
对于旧版本,然后API 5使用此:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
// your code
return true;
}
return super.onKeyDown(keyCode, event);
}
答案 2 :(得分:0)
活动不能也不应该在后台运行。对于Android中的后台操作,您应该使用Service。
有一篇关于Android processes and services的文章。
服务没有UI,它应该在后台完成所有工作。活动可以向用户显示当前应用程序状态,由服务更改/修改。当服务完成他的工作时,它可以发送通知,例如。有关详细信息,请参阅this指南。