• 小程序 TabBar 定制


    使用微信小程序开发时,用到了其 API - tabBar,设置如下(详细的内容可以参考官网 api):

    "tabBar": {
            "color": "#999",
            "selectedColor": "#f04848",
            "backgroundColor": "#ffffff",
            "borderStyle": "black",
            "list": [{
                "pagePath": "pages/index/index",
                "text": "首页",
                "iconPath": "images/shouye.png",
                "selectedIconPath": "images/shouyeActive.png"
            }, {
                "pagePath": "pages/myWelfare/myWelfare",
                "text": "我的",
                "iconPath": "images/wode.png",
                "selectedIconPath": "images/wodeActive.png"
            }]
        }

    预览发现,页面下方的图标和文字大小、间距等无法改变。为了优化用户体验,决定使用自定义组件。

    组件代码结构如下:

    tabBar.js是组件的业务逻辑代码:

    Component({
        // 组件属性
        properties: {
            // 是否是首页
            cur: Number
        },
    
        // 初始化数据
        data: {
            list: [{
                img: "./icon/shouye.png",
                imgh: "./icon/shouyeActive.png",
                name: "首页",
                link: '/pages/index/index'
            }, {
                img: "./icon/wode.png",
                imgh: "./icon/wodeActive.png",
                name: "我的",
                link: "/pages/myWelfare/myWelfare"
            }]
        },
    
        // 组件方法
        methods: {
            runTo(e) {
                let link = e.currentTarget.dataset.link;
                wx.redirectTo({
                    url: link
                })
            }
        }
    })

    tabBar.wxml是页面模板:

    <view class='content'>
        <view wx:for="{{list}}" wx:key="{{index}}"
        class="tab-bar {{cur == index ? 'cur':''}}"
        bindtap="runTo" data-link="{{item.link}}">
            <image src="{{cur == index ?item.imgh:item.img}}"></image>
            <view><text>{{item.name}}</text></view>
        </view>
    </view>

    修改之后的效果如下:

  • 相关阅读:
    centos6 python 安装 sqlite 解决 No module named ‘_sqlite3′
    Python--Virtualenv简明教程
    【centos】 error: command 'gcc' failed with exit status 1
    python3.5学习笔记:linux6.4 安装python3 pip setuptools
    Python的虚拟环境virtualenv
    hdu Robberies
    转载:hdu 动态规划题集
    在Eclipse中配置Tomcat 创建和运行Servlet/JSP
    opengl中层次建模的实现
    shiyan2
  • 原文地址:https://www.cnblogs.com/sunLemon/p/9579974.html
Copyright © 2020-2023  润新知