編輯:關於Android編程
很多應用中都有一個在用戶後退的時候顯示“再按一次退出”的提醒,這個怎麼實現呢?有兩種方式
第一種方式(最常用)
long waitTime = 2000; long touchTime = 0; @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if(event.getAction() == KeyEvent.ACTION_DOWN && KeyEvent.KEYCODE_BACK == keyCode) { long currentTime = System.currentTimeMillis(); if((currentTime-touchTime)>=waitTime) { //讓Toast的顯示時間和等待時間相同 Toast.makeText(this, "再按一次退出", (int)waitTime).show(); touchTime = currentTime; }else { finish(); } return true; } return super.onKeyDown(keyCode, event); }
重寫onBackPressed方法直接監聽返回鍵
@Override public void onBackPressed() { long currentTime = System.currentTimeMillis(); if((currentTime-touchTime)>=waitTime) { //讓Toast的顯示時間和等待時間相同 Toast.makeText(this, "再按一次退出", (int)waitTime).show(); touchTime = currentTime; }else { finish(); } }
這種方法雖然寫法簡單,但是這種方法缺只適用於Android 2.0以後.
如果你需要同時重寫這兩個方法,可能要注意一些問題啦!系統先是onKeyDown,如果return true了,就不會onBackPressed了。
終於拋棄了卡頓惡心的Eclipse,在使用一個月Android Studio 之後,對Android Studio 的設計實在是非常敬佩,雖然現在Android
android原生的dialog太生硬了,之前看到了這個效果非常不錯但是沒有用過,今天給別人推薦使用,他遇到了問題,導入後錯誤非常多,也沒有庫工程。於是自己認真看了一下,
整理總結自鴻洋的博客:http://blog.csdn.net/lmj623565791/article/details/38352503/ 一、FlowLay
本文代碼以MTK平台Android 4.4為分析對象,與Google原生AOSP有些許差異,請讀者知悉。 本文主要介紹sim卡數據的讀取過程,當射頻狀態處於
折騰一下午,遇到若干問題:如,設置水平HORIZONTAL時,占用多個跨