posts - 189,comments - 115,trackbacks - 0

          android 徹底關閉應用程序 返回鍵的捕獲

          在開發android應用時,常常通過按返回鍵(即keyCode == KeyEvent.KEYCODE_BACK)就能關閉程序,其實大多情況下該應用還在任務里運行著,其實這不是我們想要的結果。

          我們可以這樣做,當用戶點擊自定義的退出按鈕或返回鍵時(需要捕獲動作),我們在onDestroy()里強制退出應用,或直接殺死進程,具體操作代碼如下:

          @Override

          public boolean onKeyDown(int keyCode, KeyEvent event) {

          //按下鍵盤上返回按鈕

          if(keyCode == KeyEvent.KEYCODE_BACK){

          new AlertDialog.Builder(this)

          .setIcon(R.drawable.services)

          .setTitle(R.string.prompt)

          .setMessage(R.string.quit_desc)

          .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {

          @Override

          public void onClick(DialogInterface dialog, int which) {

          }

          })

          .setPositiveButton(R.string.confirm, new DialogInterface.OnClickListener() {

          public void onClick(DialogInterface dialog, int whichButton) {

          finish();

          }

          }).show();

          return true;

          }else{

          return super.onKeyDown(keyCode, event);

          }

          }

          @Override

          protected void onDestroy() {

          super.onDestroy();

          System.exit(0);

          //或者下面這種方式

          //android.os.Process.killProcess(android.os.Process.myPid());

          }

          posted on 2010-09-14 12:34 MEYE 閱讀(1372) 評論(1)  編輯  收藏 所屬分類: Android3D

          FeedBack:
          # re: android 徹底關閉應用程序 返回鍵的捕獲
          2012-08-29 14:20 | 覆蓋
          我點擊確定返回就報錯了  回復  更多評論
            
          主站蜘蛛池模板: 辽阳市| 高安市| 株洲县| 凤城市| 新邵县| 甘德县| 乌兰县| 潼关县| 高陵县| 惠东县| 青岛市| 六安市| 昌黎县| 富源县| 武平县| 都匀市| 江油市| 集安市| 云浮市| 甘谷县| 鄂尔多斯市| 永泰县| 玉林市| 海晏县| 望江县| 恩平市| 古蔺县| 邻水| 盐池县| 台南县| 乌兰察布市| 英山县| 漯河市| 崇仁县| 青岛市| 阜新| 正安县| 平和县| 响水县| 康平县| 达日县|