{ "path":"pages/log/log", "style": { "navigationBarTitleText":"hello", "app-plus": { "titleNView": { "buttons": [{ "text":"","fontSize":"22px",
"width":"50px" }] } } } }
页面监听
onNavigationBarButtonTap() { console.log("点击了自定义按钮"); }
// #ifdef APP-PLUS var webView = this.$mp.page.$getAppWebview(); // 修改buttons // index: 按钮索引, style {WebviewTitleNViewButtonStyles } webView.setTitleNViewButtonStyle(0, { text: 'hello', }); // 修改按钮上的角标 // index: 按钮索引, text: 角标文本内容 webView.setTitleNViewButtonBadge({ index: 0, text: 10, }); // 设置 searchInput的 focus // focus: true | false webView.setTitleNViewSearchInputFocus(true) // 设置 searchInput的 text webView.setTitleNViewSearchInputText(text) // searchInput 通过 webview 的 setStyle 方法进行更新 var tn = currentWebview.getStyle().titleNView; if (tn.buttons) { uni.getSystemInfo({ success:function(res){ if (res.platform=="ios") { // 这里在HBuilderX 1.9.9版本有个bug,searchInput的I变小写了 ,临时绕过下。更高版本会修复此bug tn.searchinput.placeholder = 'test'; currentWebview.setStyle({ titleNView: tn }); } else{ tn.searchInput.placeholder = 'test'; //这里有个已知bug,HBuilderX 1.9.9上,当searchInput位于首页时,动态设置placehold会导致buttons的点击事件消失。更高版本会修复此bug currentWebview.setStyle({ titleNView: tn }); } } }) } // #endif
// 修改导航栏信息
onReady() { let buttons = '按钮' //buttons = '\ue670' 如果是字体图标需要引入ttf文件 // #ifdef APP-PLUS var currentWebview = this.$mp.page.$getAppWebview(); console.log(currentWebview) var tn = currentWebview.getStyle().titleNView; tn.buttons[0].text = buttons; //[0] 按钮的下标 currentWebview.setStyle({ titleNView: tn }); // #endif }
分类:
uni-app、微信小程序
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了