亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

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

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

由于項目沒有設計返回鍵,一旦進入別的應用,就無法回到桌面。只能通過串口輸入input keyevent 4(返回鍵)來返回桌面,為了方便調試,在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()就是當從屏幕的右側向左滑動時會觸發(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(); // 調用inst對象的按鍵模擬方法 inst.sendKeyDownUpSync(keyCode);} catch (Exception e) { e.printStackTrace();} } }).start(); }

總結

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

標簽: Android
相關文章:
主站蜘蛛池模板: 丁香六月婷婷激情 | 国产高清成人 | 奥田咲在线播放 | a级国产片免费观看 | 国产精品jizz在线观看网站 | 国产午夜精品一区二区三区嫩草 | 日本成人网址 | 国产精品爱久久久久久久9999 | 国产xxxx色视频在线观看14 | 我想看一级黄色毛片 | 亚洲午夜影视 | 青草久久精品亚洲综合专区 | 国产免费高清视频在线观看不卡 | 国产一级大片 | 香蕉视频色 | 青青在线成人免费视频 | 黄在线免费观看 | 又粗又硬的aaaaaaa毛片 | 日本免费大黄在线观看 | 麻豆传媒免费视频 | 欧美黄色影视 | 2021久久精品免费观看 | 免费污污视频网站 | 欧美一级一级做性视频 | 最近免费中文字幕大全免费版视频 | 妞干网欧美 | 亚洲色图婷婷 | 国内精品久久久久影院嫩草 | 九九99在线视频 | 日韩一级黄色毛片 | 免费一看一级毛片全播放 | 国产成人午夜性视频影院 | 国产精品怕怕怕视频免费 | 国产精品久久久久9999高清 | 96精品专区国产在线观看高清 | 性强烈欧美一级毛片 | 久久精品无码一区二区三区 | 国产另类图片 | 国产视频二 | 成人性视频免费网站 | 国产精品国色综合久久 |