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

          FeedBack:
          # re: android 徹底關閉應用程序 返回鍵的捕獲
          2012-08-29 14:20 | 覆蓋
          我點擊確定返回就報錯了  回復  更多評論
            
          主站蜘蛛池模板: 岳西县| 阳东县| 仁布县| 邵阳市| 谢通门县| 青浦区| 连南| 东明县| 双江| 锡林浩特市| 德惠市| 桐梓县| 沁水县| 桐柏县| 邵东县| 双牌县| 罗平县| 湟源县| 松江区| 木兰县| 政和县| 盖州市| 莱州市| 长宁区| 长春市| 东港市| 新巴尔虎左旗| 金华市| 海原县| 平舆县| 阿拉善盟| 南宫市| 张掖市| 沛县| 汉阴县| 合肥市| 绥阳县| 明星| 永城市| 澄迈县| 轮台县|