• 管理Activity 用户在主界面按两次回退退出系统


    1:定义一个用于管理Activity的类。

    /*
     * 用于管理Activity
     */
    public class SysApp extends Application{
        private List<Activity> mList=new LinkedList<Activity>();
        
        private static SysApp instance;
        
        private SysApp(){}
        
        public synchronized static SysApp getInstance(){
            if(null==instance){
                instance=new SysApp();
            }
            return instance;
        }
        
        public void addActivity(Activity activity){
            mList.add(activity);
        }
        
        public void exit(){
            try{
                for(Activity activity:mList){
                    if(null!=activity){
                        activity.finish();
                        activity.overridePendingTransition(
                                android.R.anim.fade_in,
                                android.R.anim.slide_out_right);
                    }
                }
            }finally{
                System.exit(0);
            }
        }
        
        public void onLowMemory(){
            super.onLowMemory();
            System.gc();
        }
    }

    2:在每个Activity的onCreate方法中:将当前的Activity加入到List中。

    SysApp.getInstance().addActivity(this);

    3:检测用户两次按回退键的动作:

    @Override
        public boolean onKeyDown(int keyCode, KeyEvent event) {
            if(keyCode==KeyEvent.KEYCODE_BACK){
                if ((System.currentTimeMillis() - mExitTime) > 2000) {
                    Toast.makeText(MainActivity.this, "再按一次回退键退出系统!", Toast.LENGTH_SHORT).show();
                    mExitTime = System.currentTimeMillis();
                } else {
                    //退出系统
                    SysApp.getInstance().exit();
                }
             }
            return true;
        }
  • 相关阅读:
    Java 老兵不死,Kotlin 蓄势待发
    程序员写代码时戴着耳机,在听什么?
    推荐 7 个提升前端编程效率的 VSCode 插件
    去掉烦人的 !=null
    透析!软件开发未来 10 年的 8 个趋势
    10月01日总结
    09月29日总结
    09月28日总结
    09月27日总结
    09月26日总结
  • 原文地址:https://www.cnblogs.com/yshyee/p/3450674.html
Copyright © 2020-2023  润新知