zoukankan      html  css  js  c++  java
  • 关闭所有Activity

    我也觉得新建一个类,每启动一个Activity就放入list,每关闭一个Activity就list里面删掉的做法太笨。

    看到一个不错的方法,偷来之~(注:该文章为(男人应似海)原创

    通过广播使Android程序完全退出:

    在每个Activity创建时(onCreate时)给Activity注册一个广播接收器,当退出时发送该广播即可。大概的代码如下:

    @Override

    protected void onCreate(Bundle savedInstanceState) {

           super.onCreate(savedInstanceState);

           IntentFilter filter = new IntentFilter();

           filter.addAction("finish");

           registerReceiver(mFinishReceiver, filter);

           ……

    }

    private BroadcastReceiver mFinishReceiver = new BroadcastReceiver() {

        @Override

        public void onReceive(Context context, Intent intent) {

               if("finish".equals(intent.getAction())) {

                  Log.e("#########", "I am " + getLocalClassName()

                         + ",now finishing myself...");

                  finish();

           }

        }

    };

    在退出时执行以下代码即可关闭所有界面完全退出程序:

    getApplicationContext().sendBroadcast(new Intent("finish"));

    相信聪明的大家会把上面的代码写在一个基类里面,因为如果你的项目中Activity很多的话,写起来很麻烦,而且也不符合代码规范。(这句话很给力的有木有) 

  • 相关阅读:
    《大话数据结构》第9章 排序 9.9 快速排序(下)
    [HTML5 DOM] dispatchEvent
    [AWS SAP] Exam Tips 2 Continues Improvement for Existing Solutions
    遇见C++ PPL:C++ 的并行和异步
    遇见C++ AMP:在GPU上做并行计算
    遇见C++ Lambda
    遇见C++ AMP:GPU的线程模型和内存模型
    服务器推技术
    转http状态码
    extjs同步与异步请求互换
  • 原文地址:https://www.cnblogs.com/miya2012/p/2582385.html
Copyright © 2011-2022 走看看