Android 按两下退出的方法
//在视图创建时,把视图添加到列表中
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(...);
XXXApplication.getInstance().AddActivity(this);
...
}
//退出代码
private long exitTime = 0;
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN){
if((System.currentTimeMillis()-exitTime) > 2000){
Toast.makeText(Login.this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
exitTime = System.currentTimeMillis();
} else {
XXXApplication.getInstance().exit();
}
return true;
}
return super.onKeyDown(keyCode, event);
}
//XXXApplication.java
//
//声明一个视图列表
private List activityList = new LinkedList();
//声明一个应用实例
private static XXXApplication instance;
//构造方法
public XXXApplication(){
}
//获得实例方法
public static XXXApplication getInstance()
{
if (instance==null){
instance = new XXXApplication();
}
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);
}