2.7. 设置下拉刷新时窗口的背景色
当全局开启下拉刷新功能之后,默认的窗口背景为白色。如果自定义下拉刷新窗口背景色,设置步骤为: app.json -> window -> 为 backgroundColor 指定16进制的颜色值 #efefef。
只支持16进制
"window":{ "backgroundTextStyle":"light", "navigationBarBackgroundColor": "#2b4b6b", "navigationBarTitleText": "我的微信小程序", "navigationBarTextStyle":"white", "enablePullDownRefresh": true, "backgroundColor": "#efefef" },
2.8. 设置下拉刷新时 loading 的样式
当全局开启下拉刷新功能之后,默认窗口的 loading 样式为白色,如果要更改 loading 样式的效果,设置步骤为 app.json -> window -> 为 backgroundTextStyle 指定 dark 值。
注意: backgroundTextStyle 的可选值只有 light 和 dark
"window":{ "backgroundTextStyle":"dark", "navigationBarBackgroundColor": "#2b4b6b", "navigationBarTitleText": "我的微信小程序", "navigationBarTextStyle":"white", "enablePullDownRefresh": true, "backgroundColor": "#efefef" },
2.9. 设置上拉触底的距离
上拉触底是移动端的专有名词,通过手指在屏幕上的上拉滑动操作,从而加载更多数据的行为。
设置步骤: app.json -> window -> 为 onReachBottomDistance 设置新的数值
注意:默认距离为50px,如果没有特殊需求,建议使用默认值即可。
"window":{ "backgroundTextStyle":"dark", "navigationBarBackgroundColor": "#2b4b6b", "navigationBarTitleText": "我的微信小程序", "navigationBarTextStyle":"white", "enablePullDownRefresh": true, "backgroundColor": "#efefef", "onReachBottomDistance": 25 },
3. tabBar
3.1. tabBar
tabBar 是移动端应用常见的页面效果,用于实现多页面的快速切换。
小程序中通常将其分为:
- 底部 tabBar
- 顶部 tabBar
注意:
- tabBar中只能配置最少 2 个、最多 5 个 tab 页签
- 当渲染顶部 tabBar 时,不显示 icon,只显示文本
3.2. tabBar 的 6 个组成部分
- backgroundColor:tabBar 的背景色
- selectedIconPath:选中时的图片路径
- borderStyle:tabBar 上边框的颜色
- iconPath:未选中时的图片路径
- selectedColor:tab 上的文字选中时的颜色
- color:tab 上文字的默认(未选中)颜色
3.3. tabBar 节点的配置项
3.4. 每个 tab 项的配置选项
3.5. 案例:配置 tabBar
3.5.1 实现步骤
- 拷贝图标资源
- 新建 3 个对应的 tab 页面
- 配置 tabBar 选项
3.5.2 步骤1 - 拷贝图标资源
- 把资料目录中的 images 文件夹,拷贝到小程序项目根目录中
- 将需要用到的小图标分为 3 组,每组两个,其中:
图片名称中包含 -active 的是选中之后的图标
图片名称中不包含 -active 的是默认图标
3.5.3 步骤2 - 新建 3 个对应的 tab 页面
通过 app.json 文件的 pages 节点,快速新建 3 个对应的 tab 页面
其中,home 是首页,message 是消息页面,contact 是联系我们页面。
注意tabbar必须有一项是首页,否则不显示(即tabbar中页面有个页面放第一个)
"pages":[ "pages/home/home", "pages/message/message", "pages/contact/contact", ],
"pages":[ "pages/home/home", "pages/message/message", "pages/contact/contact", "pages/list/list", "pages/index/index", "pages/logs/logs" ],
3.5.4 步骤3 - 配置 tabBar 选项
- 打开 app.json 配置文件,和 pages、window 平级,新增 tabBar 节点
- tabBar 节点中,新增 list 数组,这个数组中存放的,是每个 tab 项的配置对象
- 在 list 数组中,新增每一个 tab 项的配置对象。对象中包含的属性如下:
pagePath 指定当前 tab 对应的页面路径【必填】
text 指定当前 tab 上按钮的文字【必填】
iconPath 指定当前 tab 未选中时候的图片路径【可选】
selectedIconPath 指定当前 tab 被选中后高亮的图片路径【可选】
3.5.5 完整的配置代码
{ "pages":[ "pages/home/home", "pages/message/message", "pages/contact/contact", "pages/list/list", "pages/index/index", "pages/logs/logs" ], "window":{ "backgroundTextStyle":"dark", "navigationBarBackgroundColor": "#2b4b6b", "navigationBarTitleText": "我的微信小程序", "navigationBarTextStyle":"white", "enablePullDownRefresh": true, "backgroundColor": "#efefef", "onReachBottomDistance": 25 }, "tabBar": { "list": [ { "pagePath": "pages/home/home", "text": "首页", "iconPath": "/images/tabs/home.png", "selectedIconPath": "/images/tabs/home-active.png" }, { "pagePath": "pages/message/message", "text": "消息", "iconPath": "/images/tabs/message.png", "selectedIconPath": "/images/tabs/message-active.png" }, { "pagePath": "pages/contact/contact", "text": "联系我们", "iconPath": "/images/tabs/contact.png", "selectedIconPath": "/images/tabs/contact-active.png" } ] }, "style": "v2", "sitemapLocation": "sitemap.json" }