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 閱讀(1378) 評論(1)  編輯  收藏 所屬分類: Android3D

          FeedBack:
          # re: android 徹底關閉應用程序 返回鍵的捕獲
          2012-08-29 14:20 | 覆蓋
          我點擊確定返回就報錯了  回復  更多評論
            
          主站蜘蛛池模板: 泉州市| 朝阳县| 鄯善县| 吉首市| 桐乡市| 白玉县| 张家川| 宜宾市| 达日县| 五寨县| 桐乡市| 绥中县| 砀山县| 张家口市| 曲阜市| 怀化市| 德州市| 宁晋县| 杂多县| 湖北省| 安多县| 福鼎市| 任丘市| 东安县| 保定市| 辉县市| 波密县| 横峰县| 自贡市| 云林县| 嘉祥县| 思南县| 广河县| 五大连池市| 抚顺市| 封丘县| 肇庆市| 安陆市| 隆德县| 宽城| 丽江市|