国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

Android PhoneWindowManager監(jiān)聽屏幕右側(cè)向左滑動實現(xiàn)返回功能

瀏覽:2日期:2022-09-24 18:16:06

由于項目沒有設計返回鍵,一旦進入別的應用,就無法回到桌面。只能通過串口輸入input keyevent 4(返回鍵)來返回桌面,為了方便調(diào)試,在Framework 中監(jiān)聽手勢,實現(xiàn)返回功能。

在frameworksbaseservicescorejavacomandroidserverpolicyPhoneWindowManager中有這么一段代碼

mSystemGestures = new SystemGesturesPointerEventListener(context,new SystemGesturesPointerEventListener.Callbacks() { @Override public void onSwipeFromTop() { Log.i('gyx','onSwipeFromTop'); if (mStatusBar != null) { requestTransientBars(mStatusBar); } } @Override public void onSwipeFromBottom() { Log.i('gyx','onSwipeFromBottom'); if (mNavigationBar != null && mNavigationBarPosition == NAV_BAR_BOTTOM) { requestTransientBars(mNavigationBar); } } @Override public void onSwipeFromRight() { Log.i('gyx','onSwipeFromRight'); sendKeyCode(4); Log.i('gyx','sendKeyCode 4'); if (mNavigationBar != null && mNavigationBarPosition == NAV_BAR_RIGHT) { requestTransientBars(mNavigationBar); } } @Override public void onSwipeFromLeft() { Log.i('gyx','onSwipeFromLeft'); if (mNavigationBar != null && mNavigationBarPosition == NAV_BAR_LEFT) { requestTransientBars(mNavigationBar); } } @Override public void onFling(int duration) { if (mPowerManagerInternal != null) { mPowerManagerInternal.powerHint( PowerHint.INTERACTION, duration); } } @Override public void onDebug() { // no-op } @Override public void onDown() { mOrientationListener.onTouchStart(); } @Override public void onUpOrCancel() { mOrientationListener.onTouchEnd(); } @Override public void onMouseHoverAtTop() { mHandler.removeMessages(MSG_REQUEST_TRANSIENT_BARS); Message msg = mHandler.obtainMessage(MSG_REQUEST_TRANSIENT_BARS); msg.arg1 = MSG_REQUEST_TRANSIENT_BARS_ARG_STATUS; mHandler.sendMessageDelayed(msg, 500); } @Override public void onMouseHoverAtBottom() { mHandler.removeMessages(MSG_REQUEST_TRANSIENT_BARS); Message msg = mHandler.obtainMessage(MSG_REQUEST_TRANSIENT_BARS); msg.arg1 = MSG_REQUEST_TRANSIENT_BARS_ARG_NAVIGATION; mHandler.sendMessageDelayed(msg, 500); } @Override public void onMouseLeaveFromEdge() { mHandler.removeMessages(MSG_REQUEST_TRANSIENT_BARS); }});

代碼中監(jiān)聽了手勢操作,其中onSwipeFromRight()就是當從屏幕的右側(cè)向左滑動時會觸發(fā),只要在這里加入返回的功能即可;

實現(xiàn)返回按鍵的功能代碼如下

private void sendKeyCode(final int keyCode) { new Thread(new Runnable() { @Override public void run() {try { // 創(chuàng)建一個Instrumentation對象 Instrumentation inst = new Instrumentation(); // 調(diào)用inst對象的按鍵模擬方法 inst.sendKeyDownUpSync(keyCode);} catch (Exception e) { e.printStackTrace();} } }).start(); }

總結(jié)

到此這篇關(guān)于Android PhoneWindowManager監(jiān)聽屏幕右側(cè)向左滑動實現(xiàn)返回功能的文章就介紹到這了,更多相關(guān)Android PhoneWindowManager監(jiān)聽屏幕右側(cè)向左滑動實現(xiàn)返回功能內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標簽: Android
相關(guān)文章:
主站蜘蛛池模板: 国产精品免费大片一区二区 | 国产成人看片免费视频观看 | 国产一级在线观看www色 | 欧美人拘一级毛片 | 午夜爽爽 | 欧美日韩另类在线观看视频 | 欧美在线三级 | 亚洲高清在线观看看片 | 国产精品二区三区免费播放心 | 视频一区色眯眯视频在线 | 在线免费观看一级片 | 国产在线91精品天天更新 | 97免费在线 | 日韩中文字幕在线观看视频 | 久久久国产一区二区三区 | a在线观看欧美在线观看 | 成人欧美午夜视频毛片 | 免费看毛片网 | 91国在线观看 | 亚洲精品久 | 一级做a爱过程免费观看 | 全部免费国产潢色一级 | 日本一级毛片片在线播放 | 国产大陆亚洲精品国产 | 成人三级网址 | 亚洲成人h | 亚洲成人免费在线视频 | 三级欧美| 巨大热杵在腿间进进出出视频 | 久久久久国产精品免费看 | 国产精品亚洲专区在线播放 | 日韩欧美在线播放 | 欧美另类孕交免费观看 | 亚洲精品一二区 | 亚洲激情欧美 | 亚洲欧美一区二区三区久久 | 国产精品久久久久久久久久久威 | 日韩一页 | 欧美一级在线 | 久久青草免费免费91线频观看 | 国产在线观看网址你懂得 |