android 与网页交互通过网页修改宿主布局和异常处理——未来之窗行业应用跨平台架构

一、通过js调整布局出错

0nly the original thread that created a view hierarchy can touch its views

二、默认修改代码

java 复制代码
 LinearLayout 未来之窗工具栏目 = Cyber_Public_Var.m_cpu.findViewById(R.id.khk);
           LinearLayout.LayoutParams 未来之窗工具栏目params = (LinearLayout.LayoutParams) 未来之窗工具栏目.getLayoutParams();
               //设置宽度值
           未来之窗工具栏目params.width = dip2px(Cyber_Public_Var.m_cpu, 18);
           未来之窗工具栏目.setLayoutParams(未来之窗工具栏目params);

           }catch (Exception ex){
              return "隐藏设置v3"+ex.getMessage();
          }catch (UnknownError ex2) {
                // 处理视图未找到的异常
                Log.e("LayoutException", "View not found");
                 return "隐藏设置v3"+ex2.getMessage();
            }

三、正确代码

java 复制代码
 try {
             
               未来之窗主宿主.runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                        LinearLayout 未来之窗工具栏目 = Cyber_Public_Var.m_cpu.findViewById(R.id.jlkhkhl);
                        LinearLayout.LayoutParams 未来之窗工具栏目params = (LinearLayout.LayoutParams) 未来之窗工具栏目.getLayoutParams();
                        //设置宽度值
                        未来之窗工具栏目params.width = dip2px(Cyber_Public_Var.m_cpu, 18);
                        未来之窗工具栏目.setLayoutParams(未来之窗工具栏目params);
                    }
                });


            }catch (Exception ex){
                return "隐藏设置v3"+ex.getMessage();
            }catch (UnknownError ex2) {
                // 处理视图未找到的异常
                Log.e("LayoutException", "View not found");
                return "隐藏设置v3"+ex2.getMessage();
            }

四、关键代码

java 复制代码
  宿主.runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                     
                    }
                });

五、阿雪技术观

拥抱开源与共享,见证科技进步奇迹,畅享人类幸福时光!

让我们积极投身于技术共享的浪潮中,不仅仅是作为受益者,更要成为贡献者。无论是分享自己的代码、撰写技术博客,还是参与开源项目的维护和改进,每一个小小的举动都可能成为推动技术进步的巨大力量

相关推荐
川石课堂软件测试1 分钟前
Android和iOS APP平台测试的区别
android·数据库·ios·oracle·单元测试·测试用例·cocoa
NE_STOP2 分钟前
shiro_实现分布式会话SessionManager、限制密码重试次数和并发登录控制
java
Seven975 分钟前
剑指offer-63、数据流中的中位数
java
毕设源码-钟学长7 分钟前
【开题答辩全过程】以 基于Spring Boot的社区养老服务管理系统的设计与实现为例,包含答辩的问题和答案
java·spring boot·后端
花卷HJ19 分钟前
Android 通用 BaseDialog 实现:支持 ViewBinding + 全屏布局 + 加载弹窗
android
mjhcsp32 分钟前
C++ Manacher 算法:原理、实现与应用全解析
java·c++·算法·manacher 算法
Coder_Boy_32 分钟前
基于SpringAI的在线考试系统-企业级软件研发工程应用规范案例
java·运维·spring boot·软件工程·devops
indexsunny34 分钟前
互联网大厂Java面试实战:微服务、Spring Boot与Kafka在电商场景中的应用
java·spring boot·微服务·面试·kafka·电商
生产队队长35 分钟前
Linux:awk进行行列转换操作
android·linux·运维
SUDO-143 分钟前
Spring Boot + Vue 2 的企业级 SaaS 多租户招聘管理系统
java·spring boot·求职招聘·sass