欧美精品亚洲精品日韩经典,午夜秒播,国产福利精品一区二区,亚洲国产成人精品久久,亚洲免费专区,国产精品国产三级国产a,日韩福利网站

龍巖易富通網(wǎng)絡(luò )科技有限公司

龍巖小程序開(kāi)發(fā),龍巖分銷(xiāo)系統

Android 如何監聽(tīng)返回鍵,彈出一個(gè)退出對話(huà)框

2015.09.10 | 708閱讀 | 0條評論 | 未命名

Android 如何監聽(tīng)返回鍵點(diǎn)擊事件,并創(chuàng )建一個(gè)退出對話(huà)框, 防止自己寫(xiě)的應用程序不小心點(diǎn)擊退出鍵而直接退出。自己記錄下這個(gè)簡(jiǎn)單的demo,備用。 注:如下代碼當時(shí)是從網(wǎng)上copy過(guò)來(lái)的,現在忘了它出自哪個(gè)原作者了,在此說(shuō)聲抱歉。 源碼如下: public class BackKeyTest extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK ) { // 創(chuàng )建退出對話(huà)框 AlertDialog isExit = new AlertDialog.Builder(this).create(); // 設置對話(huà)框標題 isExit.setTitle("系統提示"); // 設置對話(huà)框消息 isExit.setMessage("確定要退出嗎"); // 添加選擇按鈕并注冊監聽(tīng) isExit.setButton("確定", listener); isExit.setButton2("取消", listener); // 顯示對話(huà)框 isExit.show(); } return false; } /**監聽(tīng)對話(huà)框里面的button點(diǎn)擊事件*/ DialogInterface.OnClickListener listener = new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { switch (which) { case AlertDialog.BUTTON_POSITIVE:// "確認"按鈕退出程序 finish(); break; case AlertDialog.BUTTON_NEGATIVE:// "取消"第二個(gè)按鈕取消對話(huà)框 break; default: break; } } }; } 小結: Android手機常用的三個(gè)鍵,home鍵,back鍵及menu鍵。 在應用程序里我們經(jīng)常會(huì )對它們經(jīng)常進(jìn)行一定的處理,方便用戶(hù)使用。 首先我們要明確點(diǎn)擊三個(gè)鍵時(shí)系統干了什么事, 如果沒(méi)有進(jìn)行監聽(tīng)處理, 點(diǎn)擊home鍵時(shí),系統默認只執行應用程序的當前顯示的Activity的onStop()方法后跳出界面。 而點(diǎn)擊back鍵時(shí),系統默認執行的是應用程序當前Activity的finish()方法后跳出界面。 而點(diǎn)擊menu鍵時(shí),系統默認不進(jìn)行任何處理。 這里只是一個(gè)簡(jiǎn)單的應用demo,我們可以根據自己的需要設計一個(gè)更完美的退出程序對話(huà)框。 也可以在監聽(tīng)到返回事件后進(jìn)行其他處理,等等。

贊 (

發(fā)表評論