微信小程序自定义tabBar(实操)
文章目录
- 一、前言
- 二、固定效果图实现步骤
- 实现步骤
- 完整代码-矢量图
- images图片
- app.json代码
- 三、自定义效果图实现步骤
- 实现步骤
- 完整代码-矢量图
- images图片
- app.json代码
- custom-tab-bar下的代码
- 使用自定义TaBar
一、前言
一般使用tabBar的样式,固定不能改变。如下固定效果图:
如何自定义自己想要的效果图呢,举个例子。如下自定义效果图:
二、固定效果图实现步骤
使用微信开发者工具-创建项目我就不说了,官方文档很详细。
参考:官方文档介绍
实现步骤
1、添加images文件,添加想要的矢量图(可通过阿里巴巴矢量图免费获取)
2、在app.json文件中,编辑代码
3、保存,刷新即可
完整代码-矢量图
images图片
app.json代码
{"pages":["pages/index/index","pages/logs/index","pages/commdt/index","pages/cart/index","pages/mymessage/index"],"window":{"backgroundTextStyle":"light","navigationBarTitleText": "测试tabbar","navigationBarTextStyle":"white"},"tabBar": {"color": "#B6B6B6","selectedColor": "#FE9132","list": [{"pagePath":"pages/index/index","text": "首页","iconPath":"/images/sy2.png","selectedIconPath": "/images/sy1.png"},{"pagePath":"pages/commdt/index","text": "商品","iconPath":"/images/sp2.png","selectedIconPath": "/images/sp1.png"},{"pagePath":"pages/cart/index","text": "购物车","iconPath":"/images/gwc2.png","selectedIconPath": "/images/gwc1.png"},{"pagePath":"pages/mymessage/index","text": "我的","iconPath":"/images/wd2.png","selectedIconPath": "/images/wd1.png"}]},"style": "v2","sitemapLocation": "sitemap.json"
}
三、自定义效果图实现步骤
实现步骤
1、添加images文件,添加想要的矢量图(可通过阿里巴巴矢量图免费获取)
2、在app.json文件中,编辑代码
3、点击加号,在根目录新建一个custom-tab-bar文件夹
4、然后右键该文件夹,点击新建components,输入index,回车,就会自动创建四个文件
此时我们可以看到小程序底部出现,就代表创建成功了。因为他自动识别了tabBar页面。
然后在该目录下编写代码即可
完整代码-矢量图
images图片
app.json代码
"window":{"backgroundTextStyle":"light","navigationBarBackgroundColor": "#FFFFFF","navigationBarTitleText": "摆烂鸭","navigationBarTextStyle":"black"},"tabBar":{"custom": true,"list":[{"pagePath":"pages/index/index","text":"摆鸭"},{"pagePath":"pages/commdt/index","text":"不鸭"}]},
custom-tab-bar下的代码
index.wxml
<cover-view class="tab-bar"><!-- <cover-view class="tab-bar-border"></cover-view> --><cover-view wx:for="{{list}}" wx:key="index" class="tab-bar-item" data-path="{{item.pagePath}}" data-index="{{index}}" bindtap="switchTab"><cover-image src="{{selected === index ? item.selectedIconPath : item.iconPath}}"></cover-image><!-- <cover-view class="{{currentName == item.name ? 'text-active' : 'tabbar-text'}}">{{item.text}}</cover-view> --></cover-view>
</cover-view>
index.css
.tab-bar {position: fixed;bottom: 0;left: 0;right: 0;height: 130rpx;background: white;display: flex;padding-bottom: env(safe-area-inset-bottom);justify-content: center;
}.tab-bar-item {text-align: center;display: flex;flex-direction: column;
}.tab-bar-item cover-image {width: 240rpx;height: 100rpx;
}.tab-bar-item cover-view {font-size: 10px;
}
index.js
Component({/*** 组件的属性列表*/properties: {},/*** 组件的初始数据*/data: {selected: 0,color: "#7A7E83",selectedColor: "#3cc51f",list: [{"pagePath": "/pages/index/index","iconPath": "/images/by3.png","selectedIconPath": "/images/by1.png","text": "摆鸭"}, {"pagePath": "/pages/commdt/index","iconPath": "/images/by2.png","selectedIconPath": "/images/by4.png","text": "不鸭"}]},/*** 组件的方法列表*/methods: {switchTab(e) {console.log("执行跳转", e);const data = e.currentTarget.datasetconst url = data.pathwx.switchTab({url})this.setData({selected: data.index})}}
})
使用自定义TaBar
使用自定义TabBar,在切换的TabBar界面的onShow中添加如下代码。如首页中设置 selected: 0,我的中设置 selected: 2。因为 selected: 1 是特殊跳转,点击加号图标时,不再是切换tabbar,而是直接跳转发布界面了。
例如:
/pages/index/index 的.js页面添加代码
/*** 生命周期函数--监听页面显示*/onShow() {if (typeof this.getTabBar === 'function' &&this.getTabBar()) {this.getTabBar().setData({//唯一标识(其它设置不同的整数) selected: 0})}},
/pages/commdt/index 的.js页面添加代码
/*** 生命周期函数--监听页面显示*/onShow() {if (typeof this.getTabBar === 'function' &&this.getTabBar()) {this.getTabBar().setData({//唯一标识(其它设置不同的整数) selected: 1})}},
各位看官》创作不易,点个赞!!!
诸君共勉:万事开头难,只愿肯放弃。
免责声明:本文章仅用于学习参考
微信小程序自定义tabBar(实操)相关推荐
- 微信自定义tabbar有小红点_微信小程序自定义 tabbar
一定的需求情况下,无法使用小程序原生的 tabbar 的时候,需要自行实现一个和 tabbar 功能一模一样的自制组件. 查阅了海量的博客和文档之后,亲自踩坑.总结了三种在不使用微信小程序原生 tab ...
- 微信小程序自定义tab-bar遇到的问题及解决方案
微信小程序自定义tab-bar遇到的问题及解决方案 小程序自定义tab-bar 问题一:需要点击两次才能变成选中装填 解决方案: 问题二:真机查看的时候,切换页面的时候会从上到下 解决方案: 小程序自 ...
- 微信小程序自定义tabbar【中间凸起样式】
微信小程序自定义tabBar样式,选中后中间凸起 效果预览 微信开发文档:自定义tabBar 一.配置信息 在 app.json 中的 tabBar 中指定 custom 字段为 true[允许使用自 ...
- 微信小程序自定义tabbar底部菜单
自定义 tabBar 可以让开发者更加灵活地设置 tabBar 样式,以满足更多个性化的场景. 在自定义 tabBar 模式下,为了保证低版本兼容以及区分哪些页面是 tab 页,tabBar 的相关配 ...
- 微信小程序自定义tabbar导航栏,中间凸出样式
这种样式的底部导航栏 使用微信小程序的自定义tabBar:微信小程序官方说明 uni.app=>在 page.json 中的 tabBar 项指定 custom 字段为true: "t ...
- 微信小程序自定义tabBar以及图标-使用vant-weapp
小程序整合vant weapp可以看<微信小程序vant weapp安装与使用> 微信官方文档有介绍自定义tabBar 1.在小程序根目录下创建custom-tab-bar文件夹,并创建以 ...
- 微信小程序自定义tabbar、自定义导航、分包
自定义tabbar 在项目根目录下创建custom-tab-bar文件夹,在该文件夹下创建组件 自定义tabbar作为一个自定义组件进行构建.构建完毕后在app.json中的tabBar选项中配置cu ...
- 【微信小程序】【实操】批量收集formId,实现模板消息自由群发
正文开始,先感谢技术贴-微信小程序模板消息还能群发?无限制推送? - 简书(网址http://www.jianshu.com/p/2d21c6875029 截止到发稿日,链接已经打不开),整个技术实现 ...
- 微信小程序自定义TabBar和NavBar
先看效果图 看似和正常开发的小程序布局相同,但代码却不相同,从而在自定义的代码中可以编写在默认模板中不能帮助我们完成的事情. 首先来说TabBar,这个内容的实现很容易,Flex布局嘛,除了这种很普通 ...
最新文章
- wp7 sdk部署应用操作
- 理解RTMP、HttpFlv和HLS的正确姿势
- AQS的细节--自用,非正常教程
- 如何识别媒体偏见_描述性语言理解,以识别文本中的潜在偏见
- 英国科学家研究用AI预测地震:未来或提前一周预报
- 项目管理学习笔记二:信息系统服务管理
- python字典(dict)合并的操作
- 3d立体相册特效html网页代码_网页设计程序设计的必备知识点
- [leetcode]174. 地下城游戏
- hadoop——Map/Reduce中combiner的使用
- 分情况分析消防应急照明灯具是否可以两者兼备
- 解决ValueError: x and y must have same first dimension,
- 彻底删除VMware !!!
- wps转html乱码,wps转换成word后乱码
- 坚果pro2刷Nitrogen OS安卓pie纯正原生
- 华硕天选一代无线网卡断网
- echart水滴_用echarts实现水滴图效果
- android高德地图marker图标,图标样式-字体图标标注-示例中心-JS API UI 组件示例 | 高德地图API...
- Handle Protocol
- scrapy html页面加载未完成,Scrapy与scrapy-splash框架快速加载js页面