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() {
                     
                    }
                });

五、阿雪技术观

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

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

相关推荐
大模型玩家七七2 分钟前
基于语义切分 vs 基于结构切分的实际差异
java·开发语言·数据库·安全·batch
恋猫de小郭4 分钟前
Flutter Zero 是什么?它的出现有什么意义?为什么你需要了解下?
android·前端·flutter
寻星探路5 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
工程师老罗6 小时前
如何在Android工程中配置NDK版本
android
曹牧7 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
爬山算法8 小时前
Hibernate(90)如何在故障注入测试中使用Hibernate?
java·后端·hibernate
kfyty7258 小时前
集成 spring-ai 2.x 实践中遇到的一些问题及解决方案
java·人工智能·spring-ai
猫头虎8 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
李少兄8 小时前
在 IntelliJ IDEA 中修改 Git 远程仓库地址
java·git·intellij-idea