微信小程序 自定义头部导航栏和导航栏背景图片 navigationStyle
时间: 2023-09-22 12:11:52 浏览: 58
微信小程序中,可以通过 `navigationStyle` 属性来自定义头部导航栏的样式。该属性可以设置为以下三种取值:
- `default`:默认值,显示小程序的默认导航栏。
- `custom`:自定义导航栏,即隐藏小程序的默认导航栏,使用开发者自己定义的导航栏。
- `customCapsule`:自定义导航栏并且包含返回按钮,即隐藏小程序的默认导航栏和返回按钮,使用开发者自己定义的导航栏和返回按钮。
如果选择 `custom` 或 `customCapsule`,则需要在页面的 `json` 文件中定义自己的导航栏。示例:
```json
{
"navigationBarBackgroundColor": "#fff",
"navigationBarTextStyle": "black",
"navigationBarTitleText": "自定义导航栏",
"navigationStyle": "custom"
}
```
在 `json` 文件中,可以设置导航栏的背景色、文字样式和标题等信息。同时,在对应的 `wxml` 文件中,也需要定义自己的导航栏结构。示例:
```html
<view class="nav-bar">
<view class="nav-bar__left">
<image src="/images/back.png"></image>
</view>
<view class="nav-bar__title">自定义导航栏</view>
<view class="nav-bar__right"></view>
</view>
```
在该示例中,使用了一个 `view` 标签作为导航栏的容器,并在其中定义了左侧的返回按钮、中间的标题和右侧的其他内容。通过 CSS 样式可以设置导航栏的背景图片、文字颜色等样式。
如果选择 `customCapsule`,则需要在自定义导航栏中添加返回按钮的结构。示例:
```html
<view class="nav-bar">
<view class="nav-bar__left">
<button open-type="navigateBack" class="nav-bar__button nav-bar__button--back">
<image src="/images/back.png"></image>
</button>
</view>
<view class="nav-bar__title">自定义导航栏</view>
<view class="nav-bar__right"></view>
</view>
```
在该示例中,使用了一个 `button` 标签作为返回按钮,并设置了 `open-type="navigateBack"` 属性来实现返回上一页的功能。同时,在 CSS 样式中也需要对返回按钮进行特殊处理,例如添加圆角等效果。