小程序-廁所雷達

緊急狀況~ 找不到廁所? 晴天霹靂 褲衩一聲? 完嘍快來用廁所雷達吧~。做爲一個優秀的樓主,胖子我不只寫了代碼,連廣告次都想好了,哇咔咔咔~~~~ 「廁所找的快,排的才痛快」。canvas

練習區裏看到一個「廁所雷達」就來作了下,主要仍是爲了練習小程序「控件的基本用法」和「頁面間的交互」,CSS依舊讓我感到頭疼,不過比上次的demo「石頭剪刀布」好了不少了HOHO。(PS:頁面有好幾個,就先貼上首頁的代碼吧,想看的小夥伴就下載一下而後我們互相交流哦,註釋都寫好了的說。哦對了,新的分享功能也加進去了,固然廣告詞已經寫在分享裏了。)小程序

下面直接上圖:微信小程序

JS:數組

//index.js
var app = getApp()
var winHeight = 0
var winWidth = 0
Page({
  data: {
      //背景圖片,如今沒有
      img:'/pages/image/123.png',
      //肯定左邊距距離,上邊距距離,廁所title,頭像
      dataArr:[{'left':200,'top':100,'title':'我家廁所最好','img':'/pages/image/1.png'},
      {'left':20,'top':400,'title':'amis的小屋','img':'/pages/image/2.png'},
      {'left':540,'top':440,'title':'老丁的寶盆','img':'/pages/image/3.png'},
      {'left':240,'top':800,'title':'雪姐專用坑','img':'/pages/image/4.png'}]
  },

  //進頁面後獲取數據
  onLoad: function () {
    console.log('onLoad')
    var that = this
    //調用應用實例的方法獲取全局數據
    app.getUserInfo(function(userInfo){
              console.log(userInfo)
      //更新數據
      that.setData({
        userInfo:userInfo
      })
    })

 
    //獲取數據
    wx.getSystemInfo({
      success: function(res) {
        console.log(res)
        winHeight = res.windowHeight;
        winWidth = res.windowWidth;
      }
    })

    // 使用 wx.createContext 獲取繪圖上下文 context
    var context = wx.createContext()
    context.arc(winWidth/2, winHeight/2, 50, 0, 2 * Math.PI, true)
    context.arc(winWidth/2, winHeight/2, 100, 0, 2 * Math.PI, true)
    context.arc(winWidth/2, winHeight/2, 150, 0, 2 * Math.PI, true)
    context.arc(winWidth/2, winHeight/2, 200, 0, 2 * Math.PI, true)
    context.arc(winWidth/2, winHeight/2, 250, 0, 2 * Math.PI, true)
    context.arc(winWidth/2, winHeight/2, 300, 0, 2 * Math.PI, true)

    context.setStrokeStyle('red')
    context.setLineWidth(1)
    context.stroke()

    // 調用 wx.drawCanvas,經過 canvasId 指定在哪張畫布上繪製,經過 actions 指定繪製行爲
    wx.drawCanvas({
      canvasId: 'radar',
      actions: context.getActions() // 獲取繪圖動做數組
    })
  },

  onShareAppMessage: function() {
    // 用戶點擊右上角分享
    return {
      title: '廁所雷達', // 分享標題
      desc: '廁所找的快,排的才痛快', // 分享描述
      path: 'path' // 分享路徑
    }
  }
})

wxml:微信

<!--index.wxml-->
<canvas canvas-id="radar">
<image class="userinfo" src="{{userInfo.avatarUrl}}"></image>

<block wx:for="{{dataArr}}">
    <navigator url="../logs/logs?title={{item.title}}&img={{item.img}}">
        <view class="toiletView" style="left:{{item.left}}rpx;top:{{item.top}}rpx" bindtap="toiletDetails" id="{{index}}">
            <image class="toiletView-image" src="{{item.img}}"></image>
            <text class="toiletView-text">{{item.title}}</text>
        </view>
   </navigator>
</block>
</canvas>

wxss:app

/**index.wxss**/
page{
  background: black;
  height: 100%;
}

canvas{
    width: 100%;
    height: 100%;
}

.userinfo {
  position:absolute;
  top: 561rpx;
  left:311rpx;
  width: 128rpx;
  height: 128rpx;
  border-radius: 50%;
}

.toiletView{
  position:absolute;
  width: 180rpx;
  height: 180rpx;
}

.toiletView-image{
    position:absolute;
    left: 13px;
    top: 0px;
    width: 128rpx;
    height: 128rpx;
    border-radius: 50%;
}

.toiletView-text{
  position:absolute;
  bottom: 10rpx;
  font-size: 30rpx;
  color: orangered;
  width: 180rpx;
  text-align: center;
}

Demo:http://pan.baidu.com/s/1pKUpRYV
雷達的背景圖是沒有的,只能用畫板本身手動畫了一個。xss

來自:微信小程序聯盟動畫

相關文章
相關標籤/搜索