微信小程序音乐播放器,音乐播放器小程序制作步骤(首页)
第一步,我们需要创建顶部的导航栏,效果应该类似图:
可以看到这个导航栏由三个按键组成,三个按键平分屏幕宽度,文字居中显示,在选中后下方有绿色边框。
为了实现这一效果,这里采取一个比较简单的做法,为每个标签的每个状态(选中/未选中)创建一个view。
- <view class="tab">
- <view class="tab-item tab-item-selected" bindtap="tabItemTap" data-view="1" wx:if="{{currentView==1}}">推荐</view>
- <view class="tab-item" data-view="1" bindtap="tabItemTap" wx:if="{{currentView!=1}}">推荐</view>
- <view class="tab-item tab-item-selected" bindtap="tabItemTap" data-view="2" wx:if="{{currentView==2}}">排行</view>
- <view class="tab-item" data-view="2" bindtap="tabItemTap" wx:if="{{currentView!=2}}">排行</view>
- <view class="tab-item tab-item-selected" bindtap="tabItemTap" data-view="3" wx:if="{{currentView==3}}">检索</view>
- <view class="tab-item" data-view="3" bindtap="tabItemTap" wx:if="{{currentView!=3}}">检索</view>
- </view>
- .tab-item {
- float: left;
- width: 33.333333%;
- height: 43px;
- font-size: 16px;
- text-align: center;
- }
- .tab-item-selected {
- color: #31c27c;
- border-bottom: 2px solid #31c27c;
- }
所有6个view都享有tab-item这个class的属性,在这里定义了组件的宽度为1/3,字体居中显示以及字号。三个布局拥有tab-item-selected属性,这个属性为这个view添加了底部的绿色边框。currentView为控制这一组件的值,当currentView=1时,根据wx:if属性,只有带下边框的“推荐”view与不带下边框的“排行”,“检索”会被渲染,也就实现了我们想要的结果。
在index.js里编写view的点击事件tabItemTap,这个名字跟我们在写wxml时bindtap一致。
- //获取应用实例
- var app = getApp()
- Page({
- data: {
- currentView: 1,
- },
- onLoad: function () {
- var that = this;
- },
- tabItemTap: function (e) {
- var _dataSet = e.currentTarget.dataset;
- this.setData({
- currentView: _dataSet.view
- });
- },
- })
每次点击后,获取点击view的data-view的值,然后将这个值赋值给currentView,从而更新界面。
微信小程序小白项目开发案例之音乐播放器——配置项目文件
微信小程序小白项目开发案例之音乐播放器——推荐页
第二部分:如何开通一个小商店