編輯:關於Android編程
前言:
前面使用的退出程序用的是finish(),它只能退出當前Activity。如果Activity一多就不能一次性退出了。
1、退出應用程序工具類
/**
*
* @author itas109
* TODO 用於完全退出應用程序
*/
public class ExitAPPUtils extends Application {
private List activityList = new LinkedList();
private static ExitAPPUtils instance;
private ExitAPPUtils() {
}
// 單例模式中獲取唯一的ExitAPPUtils實例
public static ExitAPPUtils getInstance() {
if(null == instance) {
instance =new ExitAPPUtils();
}
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);
}
}
在每個Activity的onCreate方法裡添加如下代碼
ExitAPPUtils.getInstance().addActivity(this);
3、實現再按一次完全退出效果
定義時間
private long exitTime = 0;退出代碼,放到需要退出的Activity中。
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN){
if((System.currentTimeMillis()-exitTime) > 2000){
ToastUtils.show(getApplicationContext(), R.string.exit_hint);
exitTime = System.currentTimeMillis();
} else {
ExitAPPUtils.getInstance().exit();
//finish();
//System.exit(0);
}
return true;
}
return super.onKeyDown(keyCode, event);
}
}

Android實現網易新聞客戶端首頁效果
關於實現網易新聞客戶端的界面,以前寫過很多博客,請參考:Android實現網易新聞客戶端效果Android實現網易新聞客戶端側滑菜單(一)Android實現網易新聞客戶端
Android使用Fragment實現底部導航欄分析
前言 在做移動開發過程中底部導航欄是十分常見的功能,且市面上見到的做法也有很多種,這篇博文記錄一下使用Fragment實現底部導航欄的功能,算是對這幾天學習Andr
從setContentView方法分析Android加載布局流程
PS一句:當初你所逃避的問題終會在未來的某一天重新出現在你面前,因此,當你第一次遇到它時,請不要逃避。相信很多初學者對XML布局怎麼加載到Activity上並且顯示在手機
AndroidStudio之Failed to create JVM:erroe code -4問題
幾個月沒有碰Android Studio了,打開時卻突然出現了這樣的錯誤:我可是百事不得其解啊!我最後一次使用的時候都好好的,現在居然說我的Java環境變量有問題。我一看