一些应用程序(例如 Dolphin HD 浏览器)实现了以下功能:
按“返回”会跳回到后面的堆栈中。当显示初始视图/活动/片段并按“返回”时,会Toast
出现“再次按返回退出”或类似内容。
我怎样才能实现这个功能?
一些应用程序(例如 Dolphin HD 浏览器)实现了以下功能:
按“返回”会跳回到后面的堆栈中。当显示初始视图/活动/片段并按“返回”时,会Toast
出现“再次按返回退出”或类似内容。
我怎样才能实现这个功能?
在班上名列前茅:
int count = 0;
在您班级的正文中:
public void onBackPressed()
{
if(count == 1)
{
count=0;
finish();
}
else
{
Toast.makeText(getApplicationContext(), "Press Back again to quit.", Toast.LENGTH_SHORT).show();
count++;
}
return;
}
像这样捕获后退按钮事件:
public void onBackPressed()
{
//Add your logic here
return;
}
现在创建一个标志,这样您的应用程序在第一次触发时就不会关闭。最后通过调用你的活动来结束你finish();
的活动。
要快速显示 Toast,请使用以下命令:
Toast.makeText(this, "Press Back again to quit", Toast.LENGHT_SHORT).show();
前提是您从活动类启动此代码。如果没有,请尝试获取活动的上下文,而不是使用this
.
对于 API 级别 1,覆盖活动的
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
....
对于 API 级别 5 及更高级别,请参阅 Pieter888 所说的。