Android完全退出应用程序
2013-08-13 14:44
246 查看
定义一个Application类,利用单例模式管理Activity,在每个在Activity的onCreate()方法中调用Application.getInstance().addActivity(this)方法,在退出时调用Application.getInstance().exit()方法,就可以完全退出应用程序了。
例如下面所示,为在第三个Activity中退出应用程序:
Application类:
import java.util.LinkedList;
import java.util.List;
import android.app.Activity;
import android.app.Application;
public class MyApplication extends Application {
private static
MyApplication sInstance;
private List<Activity> mActivityList = new LinkedList<Activity>();
public static MyApplication getInstance() {
if (sInstance == null) {
sInstance = new MyApplication();
}
return sInstance;
}
public void addActivity(Activity activity) {
mActivityList.add(activity);
}
public void exit() {
for (Activity activity : mActivityList) {
activity.finish();
}
System.exit(0);
}
}
FirstActivity:
public class FirstActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_first);
MyApplication.getInstance().addActivity(this);
}
}
SecondActivity:
public class SecondActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
MyApplication.getInstance().addActivity(this);
}
}
ThirdActivity:
public class ThirdActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_third);
MyApplication.getInstance().addActivity(this);
Button btn = (Button) findViewById(R.id.btn);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
SetupWizardApplication.getInstance().exit();
}
});
}
}
例如下面所示,为在第三个Activity中退出应用程序:
Application类:
import java.util.LinkedList;
import java.util.List;
import android.app.Activity;
import android.app.Application;
public class MyApplication extends Application {
private static
MyApplication sInstance;
private List<Activity> mActivityList = new LinkedList<Activity>();
public static MyApplication getInstance() {
if (sInstance == null) {
sInstance = new MyApplication();
}
return sInstance;
}
public void addActivity(Activity activity) {
mActivityList.add(activity);
}
public void exit() {
for (Activity activity : mActivityList) {
activity.finish();
}
System.exit(0);
}
}
FirstActivity:
public class FirstActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_first);
MyApplication.getInstance().addActivity(this);
}
}
SecondActivity:
public class SecondActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
MyApplication.getInstance().addActivity(this);
}
}
ThirdActivity:
public class ThirdActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_third);
MyApplication.getInstance().addActivity(this);
Button btn = (Button) findViewById(R.id.btn);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
SetupWizardApplication.getInstance().exit();
}
});
}
}
相关文章推荐
- Android完全关闭(退出)应用程序
- Android完全退出应用程序
- android完全退出应用程序
- [forward]Android完全退出应用程序
- Android完全退出应用程序
- Android完全退出应用程序
- android 完全退出应用程序实现代码
- android完全退出应用程序的三种方式
- android 完全退出应用程序(记录,转载)
- Android应用程序完全退出
- android 完全退出应用程序
- Android-完全退出当前应用程序的四种方法
- Android完全退出应用程序的三种方法
- Android学习历程之完全退出应用程序App
- Android-完全退出当前应用程序的四种方法
- Android-完全退出当前应用程序
- android 完全退出应用程序(重要)
- android 完全退出应用程序
- Android完全退出应用程序 .
- android 完全退出应用程序