RK3568 android11 修改关机弹窗界面

需要修改关机弹窗界面,当前界面我已经按照客户需求去掉emergency

但是客户需要按其他区域可以实现返回,也就是点击黑色背景取消dialog

嗑代码发现黑色布局为:

java 复制代码
<node index="0" text="" resource-id="com.android.systemui:id/global_actions_grid_root" class="android.widget.LinearLayout" package="com.android.systemui" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[0,200][1536,1964]"/>
</node>

监听它并取消弹窗:

java 复制代码
diff --git a/packages/SystemUI/src/com/android/systemui/globalactions/GlobalActionsDialog.java b/packages/SystemUI/src/com/android/systemui/globalactions/GlobalActionsDialog.java
index ff25439a5f9f..fd0c83a225ee 100644
--- a/packages/SystemUI/src/com/android/systemui/globalactions/GlobalActionsDialog.java
+++ b/packages/SystemUI/src/com/android/systemui/globalactions/GlobalActionsDialog.java
@@ -221,7 +221,8 @@ public class GlobalActionsDialog implements DialogInterface.OnDismissListener,
     protected final ArrayList<Action> mPowerItems = new ArrayList<>();
 
     @VisibleForTesting
-    protected ActionsDialog mDialog;
+    //protected ActionsDialog mDialog;
+    protected static ActionsDialog mDialog;
 
     private Action mSilentModeAction;
     private ToggleAction mAirplaneModeOn;
@@ -537,6 +538,8 @@ public class GlobalActionsDialog implements DialogInterface.OnDismissListener,
         mDialog.getWindow().setAttributes(attrs);
         // Don't acquire soft keyboard focus, to avoid destroying state when capturing bugreports
         mDialog.getWindow().setFlags(FLAG_ALT_FOCUSABLE_IM, FLAG_ALT_FOCUSABLE_IM);
+        android.util.Log.w("GlobalActionsDialog", "lqx handleShow ");
+        mDialog.setCanceledOnTouchOutside(true);
         mDialog.show();
         mWindowManagerFuncs.onGlobalActionsShown();
     }

@@ -2335,6 +2340,22 @@ public class GlobalActionsDialog implements DialogInterface.OnDismissListener,
                     return true;
                 }
             });
+
+            //add lqx
+            ViewGroup test111 = findViewById(com.android.systemui.R.id.global_actions_grid_root);
+            android.util.Log.w("GlobalActionsDialog", "lqx -------  ");
+            test111.setClickable(true);
+            test111.setOnClickListener(new View.OnClickListener() {
+                @Override
+                public void onClick(View v) {
+                                        // 关闭对话框   lqx
+                                               android.util.Log.w("GlobalActionsDialog", "lqx setOnClickListener onClick  ");
+                                       if(mDialog != null) {
+                                               mDialog.dismiss();
+                                           }
+                                    }
+                });
+
             mGlobalActionsLayout.setRotationListener(this::onRotate);
             mGlobalActionsLayout.setAdapter(mAdapter);
             mContainer = findViewById(com.android.systemui.R.id.global_actions_container);
相关推荐
结衣结衣.1 分钟前
python中的函数介绍
java·c语言·开发语言·前端·笔记·python·学习
原野心存5 分钟前
java基础进阶知识点汇总(1)
java·开发语言
勿问东西24 分钟前
【Android】设备操作
android
五味香32 分钟前
C++学习,信号处理
android·c语言·开发语言·c++·学习·算法·信号处理
无理 Java36 分钟前
【技术详解】SpringMVC框架全面解析:从入门到精通(SpringMVC)
java·后端·spring·面试·mvc·框架·springmvc
gobeyye1 小时前
spring loC&DI 详解
java·spring·rpc
鱼跃鹰飞1 小时前
Leecode热题100-295.数据流中的中位数
java·服务器·开发语言·前端·算法·leetcode·面试
我是浮夸1 小时前
MyBatisPlus——学习笔记
java·spring boot·mybatis
TANGLONG2221 小时前
【C语言】数据在内存中的存储(万字解析)
java·c语言·c++·python·考研·面试·蓝桥杯
杨荧1 小时前
【JAVA开源】基于Vue和SpringBoot的水果购物网站
java·开发语言·vue.js·spring boot·spring cloud·开源