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

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

Android PhoneWindowManager監聽屏幕右側向左滑動實現返回功能

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

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

在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); }});

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

實現返回按鍵的功能代碼如下

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

總結

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

標簽: Android
相關文章:
主站蜘蛛池模板: 精品视频999| 男女刺激大片免费观看网站 | 色综合综合色 | 日韩欧美一二区 | 清纯唯美亚洲综合一区 | 国产人做人爱免费视频 | 成年人黄色片视频 | 国产永久一区二区三区 | 中文字幕国产亚洲 | 成人黄色小视频在线观看 | 亚洲欧洲视频在线 | 日韩一区二区三区在线视频 | 国产成人在线视频观看 | 麻豆视频链接 | 97香蕉超级碰碰碰久久兔费 | 精品国产成人a在线观看 | 一级一级一级毛片免费毛片 | 最新亚洲精品国自产在线观看 | 国产精品成人一区二区 | 亚洲欧洲日产专区 | 国产二区视频在线观看 | 九九热视频精品在线观看 | 爱福利视频一区二区 | 国产成人综合怡春院精品 | 国产精品自在欧美一区 | 久热精品男人的天堂在线视频 | 久久国产视频一区 | 成人在线一区二区 | 2019国内精品久久久久久 | 一级特黄aa大片一又好看 | 九九热视频在线免费观看 | 国产成人亚洲精品大帝 | 一级全黄男女免费大片 | 国产一级真人毛爱做毛片 | 亚洲黄色片免费看 | 免费在线看黄视频 | 国产精品一级二级三级 | 色综合久久久久久久久五月性色 | 免费黄色一级网站 | 精品国产免费一区二区 | 欧美成人观看免费完全 |