您的位置:首页 > 编程语言

<<第一行代码>>--随时随地退出程序

2016-02-29 13:01 323 查看
用一个专门的集合类对所有的活动进行管理

public class ActivityCollector{

public static List<Activity> activitiies = new ArrayList<Activity>();

//添加activity到活动集合中

public static void addActivity(Activity activity){

activitied.add(activity);

}

//从活动集合中移除activity

public static void removeActivity(Activity activity){

activities.remove(activity);

}

//finish所有activity

public static void finishAll(){

for(Activity activity : activities){

if(!activity.isFinishing()){

activity.finish();

}

}

}

}

然后修改Activity的onCreate()和onDestroy(),可以在BaseActivity中使用

//参照技巧--快速找到当前界面是哪个activity

public class BaseActivity extends Activity{

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

Log.d("BaseActivity", getClass().getSimpleName());

ActivityCollector.addActivity(this);

}

@Override

protected void onDestroy(){

super.onDestroy();

ActivityCollector.removeActivity(this);

}

}

以后,不管在什么地方退出程序,只需要调用ActivityCollector.finishAll()方法就可以了。

例如按钮点击事件:

button1.setOnClickListener(new OnClickListener(){

@Override

public void onClick(View v){

ActivityCollector.finishAll();

}

});

当然可以在销毁所有活动的代码后结束掉当前进程,以保证程序安全退出。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: