国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android實現Back功能代碼片段總結

2020-04-11 11:43:56
字體:
來源:轉載
供稿:網友

實現Back鍵功能方法有:

一:重寫onBackPressed方法

復制代碼 代碼如下:

@Override
 public void onBackPressed() {
  // do something what you want
  super.onBackPressed();
 }

二:使用測試框架Instrumentation,模擬任意鍵按下動作,注意的是該方法不能在主線程中使用,只能開啟新線程,帶來的問題就是反應速度較慢,項目中不建議使用。
調用onBack()方法;產生back鍵單擊效果 

public void onBack(){ new Thread(){  public void run() {  try{   Instrumentation inst = new Instrumentation();   inst.sendKeyDownUpSync(KeyEvent.KEYCODE_BACK);  }  catch (Exception e) {         Log.e("Exception when onBack", e.toString());       }  } }.start(); }

三:此方法是網絡上搜集的,沒有代碼驗證。

try{  Runtime runtime=Runtime.getRuntime();  runtime.exec("input keyevent " + KeyEvent.KEYCODE_BACK); }catch(IOException e){  Log.e("Exception when doBack", e.toString()); }

四:重寫dispatchKeyEvent

@Override	public boolean dispatchKeyEvent(KeyEvent event) {		// TODO Auto-generated method stub		if (event.getAction() == KeyEvent.ACTION_DOWN				&& event.getKeyCode() == KeyEvent.KEYCODE_BACK) {			//do something what you want			return true;//返回true,把事件消費掉,不會繼續調用onBackPressed		}		return super.dispatchKeyEvent(event);	}

五:這個方法算不上是完全意義的Back鍵的功能了,此方法只能關閉當前的 Activity ,也就是對于一個只有單個 Activity 的應用程序有效,如果對于有多外 Activity 的應用程序它就無能為力了。

復制代碼 代碼如下:

public void exitProgrames(){
android.os.Process.killProcess(android.os.Process.myPid());
}

使用此方法需要追加權限:<uses-permission android:name="android.permission.RESTART_PACKAGES" />

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宁化县| 台北市| 手游| 古田县| 都昌县| 广德县| 百色市| 平和县| 博乐市| 平顺县| 镇原县| 额济纳旗| 开鲁县| 济源市| 宁阳县| 台江县| 界首市| 乐陵市| 宣城市| 应用必备| 双峰县| 鸡东县| 博湖县| 博客| 西昌市| 平潭县| 郧西县| 桓台县| 工布江达县| 临朐县| 乐昌市| 宁陕县| 布尔津县| 灵丘县| 伊宁县| 青岛市| 达尔| 揭西县| 蒙阴县| 延庆县| 湘潭市|