我已经在android中创建了一个应用程序。它是一个与timer相关的应用程序。现在我已经尝试了很多把控制器放在android设备的后退按钮上,当它被按下时,应该杀死进程并直接显示主菜单。 ..请帮帮我...提前感谢你..!
答案 0 :(得分:2)
答案 1 :(得分:2)
试试这段代码
@Override
public void onBackPressed() {
yourActivity.this.finish;
}
答案 2 :(得分:1)
你可以这样做点击后退按钮。
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
finish();// call finish() on click of back button
}
return super.onKeyDown(keyCode, event);
}
例如:当您使用startActivity(新意图(...))从A活动转移到B活动时; 没有完成或杀死一个活动,它将在堆栈中。So when you click on back button in B activity you can go back to A activity, which is already in stack.
如果您希望在转移到下一个活动时返回每个活动的主菜单调用完成()。
例如:当您使用startActivity(新意图(...))从A活动转移到B活动时;致电finish()
以杀死一项活动。So when you click on back button in B activity you can go back to Main Menu coz every activity ll be killed.
摘录在这里:
startActivity(new intent(A.this, B.class));
finish(); // when you click back button on B activity, directly you can go to main menu
已更新: 使用下面的代码按下后退按钮杀死应用程序的其他方法。 但不推荐
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
android.os.Process.killProcess(android.os.Process.myPid());// Kill the app on click of back button.
}
return super.onKeyDown(keyCode, event);
}
希望这可以帮助您理解这个概念。
答案 3 :(得分:1)
只需清除活动历史记录即可关闭您的应用。并在finsh();
startActivity();
<activity
android:name="com.example.abcd.Your_Acitivty"
android:noHistory="true">
</activity>
快乐的编码!
答案 4 :(得分:0)
好吧,您可以使用此代码转到设备的主屏幕 -
finish();
moveTaskToBack(true);
System.exit(0);
finish()方法仅关闭当前活动。
moveTasktoBack 将隐藏您的应用,您还可以通过 android.os.Process.killProcess(android.os.Process.myPid())快速终止应用你要。
答案 5 :(得分:0)
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
moveTaskToBack(true);
return true;
}
return super.onKeyDown(keyCode, event);
}
答案 6 :(得分:0)
在Manifest中,您可以尝试添加此
<activity
android:name=".MainActivity"
android:finishOnCloseSystemDialogs="true"
</activity>
我遇到了类似的问题,这为我解决了这个问题。
答案 7 :(得分:0)
我通过覆盖onBackPress()和onStop()
解决了这个问题@Override
protected void onStop() {
super.onStop();
System.exit(0); //kill the app
}
@Override
public void onBackPressed() { //here I capture the event onBackPress
super.onBackPressed();
onStop(); //call onStop
}