android退出应用:弹出对话框退出应用
2014-05-25 21:13
197 查看
(1)定义栈,写一个Exitactivity 类,利用单例模式管理Activity,在每个在
Activity 的onCreate()方法中调用Exitactivity.getInstance().addActivity(this)方法,在退
出时调用Exitactivity.getInstance().exit()方法,就可以完全退出应用程序了。这个主要建立了一个对话框退出activity
(2)Exitactivity类:package com.liuzuyi.exit;
import java.util.LinkedList;
import java.util.List;
import android.app.Activity;
import android.app.Application;
public class Exitactivity extends Application {
private List<Activity> activityList=new LinkedList<Activity>();
private static Exitactivity instance;
private Exitactivity()
{
}
//单例模式中获取唯一的ExitApplication 实例
public static Exitactivity getInstance()
{
if(null == instance)
{
instance = new Exitactivity();
}
return instance;
}
//添加Activity 到容器中
public void addActivity(Activity activity)
{
activityList.add(activity);
}
//遍历所有Activity 并finish
public void exit()
{
for(Activity activity:activityList)
{
activity.finish();
}
System.exit(0);
}
}
MainActivity:
package com.liuzuyi.exit;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
public class MainActivity extends Activity {
private Button next;
private Button exit;
int i = 0;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
next=(Button)findViewById(R.id.button2);
exit=(Button)findViewById(R.id.button1);
next.setOnClickListener(l);
exit.setOnClickListener(ll);
Exitactivity.getInstance().addActivity(this);
}
OnClickListener l = new OnClickListener() {
public void onClick(View v) {
Intent intent=new Intent(MainActivity.this,TwoActivity.class);
startActivity(intent);
}
};
OnClickListener ll = new OnClickListener() {
@Override
public void onClick(View v) {
builddialog();
}
};
public void builddialog()
{
AlertDialog.Builder ad = new Builder(MainActivity.this) ;
ad.setTitle("退出应用");
ad.setMessage("是否退出应用?");
ad.setPositiveButton("确认", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
Exitactivity.getInstance().exit();
} }
);
ad.setNegativeButton("取消", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
ad.create().show();
}
}
其他的两个activity也是同样的,可以参考上面的activity
Activity 的onCreate()方法中调用Exitactivity.getInstance().addActivity(this)方法,在退
出时调用Exitactivity.getInstance().exit()方法,就可以完全退出应用程序了。这个主要建立了一个对话框退出activity
(2)Exitactivity类:package com.liuzuyi.exit;
import java.util.LinkedList;
import java.util.List;
import android.app.Activity;
import android.app.Application;
public class Exitactivity extends Application {
private List<Activity> activityList=new LinkedList<Activity>();
private static Exitactivity instance;
private Exitactivity()
{
}
//单例模式中获取唯一的ExitApplication 实例
public static Exitactivity getInstance()
{
if(null == instance)
{
instance = new Exitactivity();
}
return instance;
}
//添加Activity 到容器中
public void addActivity(Activity activity)
{
activityList.add(activity);
}
//遍历所有Activity 并finish
public void exit()
{
for(Activity activity:activityList)
{
activity.finish();
}
System.exit(0);
}
}
MainActivity:
package com.liuzuyi.exit;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
public class MainActivity extends Activity {
private Button next;
private Button exit;
int i = 0;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
next=(Button)findViewById(R.id.button2);
exit=(Button)findViewById(R.id.button1);
next.setOnClickListener(l);
exit.setOnClickListener(ll);
Exitactivity.getInstance().addActivity(this);
}
OnClickListener l = new OnClickListener() {
public void onClick(View v) {
Intent intent=new Intent(MainActivity.this,TwoActivity.class);
startActivity(intent);
}
};
OnClickListener ll = new OnClickListener() {
@Override
public void onClick(View v) {
builddialog();
}
};
public void builddialog()
{
AlertDialog.Builder ad = new Builder(MainActivity.this) ;
ad.setTitle("退出应用");
ad.setMessage("是否退出应用?");
ad.setPositiveButton("确认", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
Exitactivity.getInstance().exit();
} }
);
ad.setNegativeButton("取消", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
ad.create().show();
}
}
其他的两个activity也是同样的,可以参考上面的activity
相关文章推荐
- Android按返回键退出应用时弹出对话框
- Android 如何监听返回键,弹出一个退出对话框
- android按返回键,弹出退出提示对话框,并退出应用程序。
- Android 应用在退出时弹出提示框
- Android 如何监听返回键,弹出一个退出对话框
- Android 如何监听返回键,弹出一个退出对话框
- Android 如何监听返回键,弹出一个退出对话框
- Android 如何监听返回键,弹出一个退出对话框
- android弹出对话框中带有确定和取消对话框带事件的应用
- Android 如何监听返回键,弹出一个退出对话框
- Android 监听返回键,弹出确认退出对话框
- Android 如何监听返回键,弹出一个退出对话框
- 在Android中捕获Application全局异常 阻止系统弹出强制退出的对话框
- Android 监听返回键,弹出一个退出对话框
- Android 2.3禁止系统弹出应用程序强制退出对话框
- Android应用开发——退出确认对话框 后退键捕捉
- Air for Android开发中使用Back键弹出是否退出对话框
- android 返回键退出程序时弹出对话框请求确认退出
- Android 如何监听返回键,弹出一个退出对话框
- cocos2dx android返回键- 弹出退出对话框