“后退”按钮在许多不同的android应用程序中有许多不同的用途。一些应用程序开发人员使用它来关闭其应用程序时,有些人则使用它来遍历该应用程序的上一个活动。许多应用程序要求用户在一定间隔内两次按下“返回”按钮才能成功关闭应用程序,这被认为是最佳做法。
为什么要在应用程序中实现呢?
- 它为应用程序添加了更好的UX,为用户提供了令人满意的体验。
- 如果用户误按了“上一步”按钮,它可以作为确认。
方法
步骤1:建立新的Android Studio专案
请参考本文“如何在Android Studio中创建新项目”以详细了解如何创建新的Android Studio项目。请注意,选择Java作为编程语言。
步骤2:使用activity_main.xml文件
在此示例中,我们只有一个布局activity_main.xml ,其中将包含ImageView和TextView 。这是我们的activity_main.xml的样子:
activity_main.xml
MainActivity.java
package org.geeksforgeeks.pressbackexit;
import android.os.Bundle;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
private long pressedTime;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public void onBackPressed() {
if (pressedTime + 2000 > System.currentTimeMillis()) {
super.onBackPressed();
finish();
} else {
Toast.makeText(getBaseContext(), "Press back again to exit", Toast.LENGTH_SHORT).show();
}
pressedTime = System.currentTimeMillis();
}
}
上面的布局看起来像这样:
步骤3:使用MainActivity。 Java文件
现在是应用程序的主要部分。为了检查何时按下“ BACK”按钮,请使用Android库中的onBackPressed()方法。接下来,执行检查以查看是否在2秒钟内再次按下了“返回”按钮,如果按下,将关闭该应用程序。否则,请不要退出。这是MainActivity的方式。 Java看起来像:
主要活动。Java
package org.geeksforgeeks.pressbackexit;
import android.os.Bundle;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
private long pressedTime;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public void onBackPressed() {
if (pressedTime + 2000 > System.currentTimeMillis()) {
super.onBackPressed();
finish();
} else {
Toast.makeText(getBaseContext(), "Press back again to exit", Toast.LENGTH_SHORT).show();
}
pressedTime = System.currentTimeMillis();
}
}
在上面的代码中,当用户按下“返回”按钮一次时,会向他们致敬,要求他们再次按下按钮以退出。如果用户随后在2秒钟(2000毫秒)内再次按下“返回”,则该应用程序将关闭,否则,我们将保留在该位置。
输出:在模拟器上运行
想要一个节奏更快,更具竞争性的环境来学习Android的基础知识吗?
单击此处,前往由我们的专家精心策划的指南,以使您立即做好行业准备!