我正在开发一个Android Webview应用程序。我想使用onbackpressed
转到上一页,但也退出应用程序。
它应该如何工作:
- 在主页上按后退按钮:我想显示一条消息"再次按退出"。 在其他
- 网页上按后退按钮:它应该立即打开上一页。
我尝试使用以下代码来实现此目的。唯一的问题是我不知道如何将我的主页设置为变量。现在我收到错误消息"页面无法解析为变量"。我明白为什么我会收到这条消息,我只是不知道在这种特殊情况下如何解决它。
假设我的主页网址是"http://example.com",如何将此主页设置为变量?
private Boolean exit = false;
@Override
public void onBackPressed() {
if(page != "homepage"){
super.onBackPressed(); // Calls the Overriden Method
}
else
{
if (exit)
this.finish();
else {
Toast.makeText(this, "Press once again to exit.",
Toast.LENGTH_SHORT).show();
exit = true;
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
exit = false;
}
}, 3 * 1000);
}
}
}
您可以检查 webview 的 isback 页面,然后您可以记下应用程序中存在的代码。您可以使用以下代码进行检查
if(webView.canGoBack())
{
// your code
}
也许这会有所帮助:
int clickedTwice = 0;
public void onBackPressed() {
if(page != "homepage"){
super.onBackPressed(); // Calls the Overriden Method
}
else
{
clickedTwice++;
if(clickedTwice == 2)
{
super.onBackPressed();
}
else
{
Toast.makeText(this,"press again to exit",Toast.LENGTH_SHORT).show();
}
new Handler().postDelayed(new Runnable()
{
@Override
public void run()
{
clickedTwice--;
}
}, 2000); // will wait for 2 seconds for user's another click!
}
}
}