小程序自定义tabBar(类似咸鱼)
在App上做类似咸鱼的Tabbar时,只能用自定义的方法,考虑小程序中如果想自定义像咸鱼这样的Tabbar,该如何实现呢?网上搜索的大多资料的tabbar都会在页面切换的时候重新渲染,下面的方法页面跳转时不会闪。
效果图
下载地址:https://github.com/dt8888/tabbar
具体实现方法:
1.分装一个tabbar的组件属性列表实现项目的Tabbar的个数,文字,颜色,图片大小最好用官网推荐的81px*81px的icon。
JS关键代码为:
properties: {tabbar: {type: Object,value: {"backgroundColor": "#ffffff","color": "#979795","selectedColor": "#1c1c1b","list": [{"pagePath": "pages/index/index","iconPath": "icon/icon_home.png","selectedIconPath": "icon/icon_home_HL.png","text": "首页"},{"pagePath": "pages/middle/middle","iconPath": "icon/icon_release.png","isSpecial": true,"text": "发布"},{"pagePath": "pages/mine/mine","iconPath": "icon/icon_mine.png","selectedIconPath": "icon/icon_mine_HL.png","text": "我的"}]}}},
2.在App.js中的onLaunch方法中 用wx.hideTabBar();隐藏系统自带的tabbar,点击时作为按钮选中的判断方法为:
editTabbar: function () {let tabbar = this.globalData.tabBar;let currentPages = getCurrentPages();let _this = currentPages[currentPages.length - 1];let pagePath = _this.route;if(pagePath.indexOf('/') != 0){pagePath = '/' + pagePath;} for (let i in tabbar.list) {tabbar.list[i].selected = false;(tabbar.list[i].pagePath == pagePath) && (tabbar.list[i].selected = true);}_this.setData({tabbar: tabbar});},
如何引用该项目实现自己的自定义Tabbar:
1.找到项目中的tabbarComponent目录,放到自己的工程中,然后将tabbarComponent->icon图标替换成你自己的tabbar图片,文字颜色根据需求做适当的更改。
2.app.json中配置tabBar,因为点击发布时做的页面跳转,不配置在tabBar的list中。
3.在app.js中的globalData中加入自定义tabbar的参数,再加入一个方法给tabBar.list配置中的页面使用。
4.在页面的JS中的data中加入tabbar:{},并在onload方法中调用app.editTabbar();
5.页面的.json文件中加入代码
"usingComponents": {
"tabbar": "../../tabbarComponent/tabbar"
}
6.在页面的.wxml文件中加入<tabbar tabbar="{{tabbar}}"></tabbar>
小程序自定义tabBar(类似咸鱼)相关推荐
- 微信自定义tabbar有小红点_微信小程序自定义 tabbar
一定的需求情况下,无法使用小程序原生的 tabbar 的时候,需要自行实现一个和 tabbar 功能一模一样的自制组件. 查阅了海量的博客和文档之后,亲自踩坑.总结了三种在不使用微信小程序原生 tab ...
- 小程序自定义tabbar custom-tab-bar 6s出不来解决方案,cover-view不兼容
小程序自定义tabbar custom-tab-bar 6s出不来解决方案,cover-view不兼容 参考文章: (1)小程序自定义tabbar custom-tab-bar 6s出不来解决方案,c ...
- 微信小程序自定义输入仿咸鱼发布
微信小程序自定义输入仿咸鱼发布 效果图 效果图2 主要代码 .js // pages/user/release/release.js import Toast from 'vant-weapp/toa ...
- 小程序自定义tabbar,子页面也显示tabbar
小程序自定义tabbar,子页面也显示tabbar 我找了很多很多的文件,大都是显示一级页面的tabbar的,子页面显示tabbar几乎没有,我自己整理了一下.如果有不对的地方,希望评论指出,我会进一 ...
- 微信小程序自定义tab-bar遇到的问题及解决方案
微信小程序自定义tab-bar遇到的问题及解决方案 小程序自定义tab-bar 问题一:需要点击两次才能变成选中装填 解决方案: 问题二:真机查看的时候,切换页面的时候会从上到下 解决方案: 小程序自 ...
- 微信小程序自定义tabbar【中间凸起样式】
微信小程序自定义tabBar样式,选中后中间凸起 效果预览 微信开发文档:自定义tabBar 一.配置信息 在 app.json 中的 tabBar 中指定 custom 字段为 true[允许使用自 ...
- 小程序 自定义tabbar + 自定义tabbar样式 + tabbar切换激活样式问题
我用的是 Vant Weapp UI组件库, 需要用store 全局共享数据 解决tabbar切换激活样式问题 关于如何使用 Mobx,创建store可参考:微信小程序 Mobx实现数据共享(创建s ...
- uni-app自定义tabBar;uni-app小程序自定义tabBar;uni-app小程序修改中间tabBar导航栏大小;uni-app中间导航栏凸起;uni-app修改底部导航栏
需求:要求小程序,中间的tabBar自定义凸起或者图标变大: 问题:查看uni-app的tabBar文档可知,小程序是不支持midButton的: 解决思路:隐藏uni-app原有的tabBar,然后 ...
- 小程序自定义tabbar,不同用户显示不同页面
前言 当我们拿到一个小程序项目,官方tabbar足够我们使用,但跟着业务有所增加,我们前端也不得不跟着改变.因为业务需求,我这个小程序分成了用户端和管理端两端,相对应使用权限也不同,因此tabbar所 ...
- 微信小程序自定义tabBar(实操)
文章目录 一.前言 二.固定效果图实现步骤 实现步骤 完整代码-矢量图 images图片 app.json代码 三.自定义效果图实现步骤 实现步骤 完整代码-矢量图 images图片 app.json ...
最新文章
- MySQL中字段约束有哪些_mysql字段约束
- RXJAVA之变换操作
- linux 的一个防火墙策略
- Silverlight 5 深入理解 - TechEd2011葡萄城讲师课程
- strcat()函数常见问题
- 【Android 安装包优化】使用 lib7zr.so 动态库处理压缩文件 ( jni 中 main 函数声明 | 命令行处理 | jni 调用 lib7zr.so 函数库处理压缩文件完整代码 )
- C++_向函数传递对象
- 【Python】列表 list 添加元素的几种方法
- 跟益达学Solr5之使用Tika从PDF中提取数据导入索引(转字:http://www.tuicool.com/articles/JfUfaey)
- 复制两个类的相同属性
- vnpy学习11_增加测试评估指标
- 舰船目标检测的学习笔记
- OpenStack网络介绍
- android 屏幕长宽,怎么获取手机屏幕长宽
- vue+webapi 实现WebSocket 推送
- AD画板,如何提高工作效率?
- 单端正激(Forward)变换器的工作原理CCM模式下电路设计参数计算
- 计算机组成原理实验移位运算,移位运算实验
- 雨点效果——HTML5之特效
- mac - 让焦点迅速定位到分屏显示中
热门文章
- Linux Regmap分析
- PROC文件及文件夹创建
- 南华大学ACM队2021年7.14训练赛题解
- 轻松,高效,正确的写出一个爬虫?看这一篇就够了!踩过无数坑后总结的爬虫编写流程
- 导入php插件_微信公众号吸粉的方法(将网站100%的流量导入到公众号中)
- python3 shell脚本开发_python3 subprogress 模块的使用 代替shell编写脚本
- 初中计算机第一课怎么讲,初中信息技术第一课 图像及其简单处理教学设计
- 春季高考计算机专业专业分值,春季高考总分多少 分值分布情况如何
- java为什么序列化_什么是Java序列化、为什么要序列化、JAVA序列化有哪些方式(性能由低至高)...
- java数据横转竖_关于竖表转横表的问题