Android退出应用的确认
16lz
2021-01-26
当我们的程序处于入口页的时候,我们为了防止用户点击了back键而直接退出程序,我们需要在此界面中拦截系统的方法。
常用的两种处理方法:
1. 弹出确认dialog,点击确定后退出程序
public class TestActivity extends Activity { AlertDialog.Builder builder; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_test); initDialog(); } /** * 初始化好确认退出的对话框 */ private void initDialog() { builder = new AlertDialog.Builder(this).setIcon(android.R.drawable.btn_star) .setTitle("这个是标题").setMessage("确定要退出程序吗?") .setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { finish(); dialog.dismiss(); } }) .setNegativeButton("取消", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); } }); } /** * 重写点击返回建的事件处理,展示 我们写好的dialog * */ @Override public void onBackPressed() { builder.show(); }}
2. 双击退出
即记录两次点击的时间。判断两次点击的时间差在小于多少时候算双击。
public class TestActivity extends Activity { private long exitTime; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_test); } /** * 重写点击返回建的事件处理 * */ @Override public void onBackPressed() { if ((System.currentTimeMillis() - exitTime) > 2000) { Toast.makeText(getApplicationContext(), "再按一次退出程序", Toast.LENGTH_SHORT).show(); exitTime = System.currentTimeMillis(); } else { finish(); System.exit(0); } }}
更多相关文章
- 我的第一个Android程序——HelloWorld
- 第一个Xamarin的 Android(安卓)应用程序!
- Android(安卓)Studio初体验
- 【转】使用Intent将图片或文字分享到新浪微博等程序
- android api 中文 (75)―― AdapterView.OnItemClickListener
- Android(安卓)退出终止APP的方法总结
- Android中Gallery 点击图片放大
- Android(安卓)通过initrc控制命令、服务启动时间
- Android(安卓)7.1.2(Android(安卓)N) Multi-window-mode--多窗口