最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android實現(xiàn)Back功能代碼片段總結(jié)

 更新時間:2014年09月21日 16:07:50   投稿:mdxy-dxy  
今天把在公司實現(xiàn)某功能所用到的Back鍵功能模塊代碼片段做一個整理。方便以后直接拿出來使用

實現(xiàn)Back鍵功能方法有:

一:重寫onBackPressed方法

復(fù)制代碼 代碼如下:

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

二:使用測試框架Instrumentation,模擬任意鍵按下動作,注意的是該方法不能在主線程中使用,只能開啟新線程,帶來的問題就是反應(yīng)速度較慢,項目中不建議使用。
調(diào)用onBack()方法;產(chǎn)生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();

 }

三:此方法是網(wǎng)絡(luò)上搜集的,沒有代碼驗證。

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,把事件消費掉,不會繼續(xù)調(diào)用onBackPressed
		}
		return super.dispatchKeyEvent(event);
	}

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

復(fù)制代碼 代碼如下:

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

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

相關(guān)文章

最新評論

宁波市| 辽宁省| 万年县| 莱芜市| 滦平县| 麻城市| 景洪市| 东至县| 罗城| 共和县| 贵阳市| 乌海市| 广水市| 蒙山县| 宜阳县| 固镇县| 沂南县| 大姚县| 东港市| 富锦市| 祁阳县| 庆安县| 威信县| 宜川县| 南川市| 兴山县| 青铜峡市| 应用必备| 浪卡子县| 焦作市| 自治县| 澎湖县| 龙胜| 璧山县| 安泽县| 二连浩特市| 潮安县| 枞阳县| 马边| 封丘县| 若羌县|