1.使用canvas组件实现“奥运五环”的绘制。
步骤:
js代码:
Page({
onReady:function (e){
// 获取canvas上下文对象
const ctx = wx.createCanvasContext('myCanvas')
// 绘制蓝色圆环
ctx.beginPath()
ctx.arc(100, 100, 50, 0, 2 * Math.PI)
ctx.setStrokeStyle('#0000FF')
ctx.stroke()
// 绘制黄色圆环
ctx.beginPath()
ctx.arc(160, 100, 50, 0, 2 * Math.PI)
ctx.setStrokeStyle('#FFFF00')
ctx.stroke()
// 绘制黑色圆环
ctx.beginPath()
ctx.arc(220, 100, 50, 0, 2 * Math.PI)
ctx.setStrokeStyle('#000000')
ctx.stroke()
// 绘制绿色圆环
ctx.beginPath()
ctx.arc(130, 150, 50, 0, 2 * Math.PI)
ctx.setStrokeStyle('#00FF00')
ctx.stroke()
// 绘制红色圆环
ctx.beginPath()
ctx.arc(190, 150, 50, 0, 2 * Math.PI)
ctx.setStrokeStyle('#FF0000')
ctx.stroke()
// 绘制完成,显示在canvas上
ctx.draw()
}
})
wxml代码:
<canvas canvas-id="myCanvas"></canvas>
运行结果:
2.使用相应组件,完成如图4-29所示作业的“书单”页面
wxml代码:
<view class="yu">← 书单</view>
<view class="y1">
<view class="y2">培养商业意识,走出生活,职场和事业的困境</view>
<view class="y3">创新者是如何思考问题的?本书单包括了互联网,思维方式,商业,文案,市场,营销等方方面面,是在思维方式上的创新,略去传统商学院的教条</view>
</view>
<view class="s">
<view class="tp1" style="display: flex;">
<image class="t1" src="/pages/index/po.jpg"/>
<view class="wz1">
<view class="z1">金字塔原理</view>
<view class="z2">芭芭拉•明托(Barbara Minto)</view>
<view class="z3">金字塔原理是一种重点突出、逻辑清晰、主次分明的逻辑思路、表达方式和规范动作……</view>
</view>
</view>
<view class="x"></view>
<view class="tp2" style="display: flex;">
<image class="t2" src="/pages/index/ju.jpg"/>
<view class="wz2">
<view class="z1">基业长青</view>
<view class="z2">[美]吉姆•柯林斯,杰里•波勒斯</view>
<view class="z3">《基业长青(珍藏版)》打破了旧有神话,提供了新颖的见解,并为那些有志于建立经得……</view>
</view>
</view>
</view>
wxss代码:
.yu{
font-size: 60rpx;
margin-top: 200rpx;
}
.y1{
background-color: black;
}
.y2{
color: aliceblue;
text-align: center;
font-size: 45rpx;
padding: 30rpx;
}
.y3{
color: aliceblue;
padding: 20rpx;
}
.s{
margin: 50rpx;
}
.wz1{
margin-left: 50rpx;
}
.t1{
width: 700rpx;
height: 350rpx;
}
.t2{
width: 700rpx;
height: 350rpx;
}
.z1{
font-size: 70rpx;
font-weight: 700;
}
.z2{
font-size: 40rpx;
font-weight: 600;
}
.x{
margin-top: 50rpx;
border-bottom: 4px solid #ccc;
}
.wz2{
margin-left: 50rpx;
}
运行结果:
3.使用相应组件,完成如图4-30所示的“西安找拼车”小程序部分界面。
wxml代码:
<view class="yu">✕ 西安找拼车</view>
<view class="one">
<view class="ch">联系方式(手机和微信至少填一项)</view>
</view>
<view class="two">
<view class="two2">称呼*</view>
<view class="two3">请输入称呼</view>
</view>
<view class="three">
<view class="three2">手机号</view>
<view class="three3">请输入手机号</view>
</view>
<view class="four">
<view class="four2">微信号</view>
<view class="four3">请输入微信号</view>
</view>
<view class="one">
<view class="zha">拼车信息</view>
</view>
<view class="five">
<view class="five2">出发地点*</view>
<view class="five3">限7个字</view>
</view>
<view class="six">
<view class="six2">目的地*</view>
<view class="six3">限7个字</view>
</view>
<view class="seven">
<view class="seven2">空座数*</view>
<view class="seven3">请输入空座数</view>
</view>
wxss代码:
.yu{
margin-top: 120rpx;
font-size: 70rpx;
color: aliceblue;
background-color: black;
}
.one{
padding: 40rpx 40rpx;
border-bottom: 5px solid #c0c0c0;
background-color: #ccc;
}
.ch{
width: auto;
height: 35rpx;
font-size: 35rpx;
}
.two{
margin-left: 15px;
padding: 10px 5px;
border-bottom: 4px solid #c0c0c0;
}
.two2{
font-size: 50rpx;
font-weight: 700;
}
.two3{
position: absolute;
left: 180px;
top: 150px;
font-size: 50rpx;
}
.three{
margin-left: 15px;
padding: 10px 5px;
border-bottom: 4px solid #c0c0c0;
}
.three2{
font-size: 50rpx;
font-weight: 700;
}
.three3{
position: absolute;
left: 180px;
top: 200px;
font-size: 50rpx;
}
.four{
padding: 10px 20px 10px;
border-bottom: 4px solid #c0c0c0;
}
.four2{
font-size: 50rpx;
font-weight: 700;
}
.four3{
position: absolute;
left: 180px;
top: 250px;
font-size: 50rpx;
}
.five{
margin-left: 15px;
padding: 10px 5px 10px;
border-bottom: 4px solid #c0c0c0;
}
.five2{
font-size: 50rpx;
font-weight: 700;
}
.five3{
position: absolute;
left: 180px;
top: 365px;
font-size: 50rpx;
}
.six{
margin-left: 15px;
padding: 10px 5px 10px;
border-bottom: 4px solid #c0c0c0;
}
.six2{
font-size: 50rpx;
font-weight: 700;
}
.six3{
position: absolute;
left: 180px;
top: 415px;
font-size: 50rpx;
}
.seven{
padding: 10px 20px 10px;
border-bottom: 4px solid #c0c0c0;
}
.seven2{
font-size: 50rpx;
font-weight: 700;
}
.seven3{
position: absolute;
left: 180px;
top: 470px;
font-size: 50rpx;
}
运行结果:
三,编程题
“人生进程”是一款极简的小程序,它只有一个功能:就是计算一个人从出生到现在已经度过了多少个月,如图4-31所示。请编写程序完成此功能。
wxss代码:
.cc{
width: 360px;
position: absolute;
left: -50px;
}
.yu{
margin-top: 120rpx;
font-size: 70rpx;
color: aliceblue;
background-color: black;
}
.one{
padding: 40rpx 40rpx;
border-bottom: 5px solid #c0c0c0;
background-color: #ccc;
}
.ch{
width: auto;
height: 35rpx;
font-size: 35rpx;
}
.two{
margin-left: 15px;
padding: 10px 5px;
border-bottom: 4px solid #c0c0c0;
}
.two2{
font-size: 50rpx;
font-weight: 700;
}
.two3{
position: absolute;
left: 180px;
top: 150px;
font-size: 50rpx;
}
.three{
margin-left: 15px;
padding: 10px 5px;
border-bottom: 4px solid #c0c0c0;
}
.three2{
font-size: 50rpx;
font-weight: 700;
}
.three3{
position: absolute;
left: 180px;
top: 200px;
font-size: 50rpx;
}
.four{
padding: 10px 20px 10px;
border-bottom: 4px solid #c0c0c0;
}
.four2{
font-size: 50rpx;
font-weight: 700;
}
.four3{
position: absolute;
left: 180px;
top: 250px;
font-size: 50rpx;
}
.five{
margin-left: 15px;
padding: 10px 5px 10px;
border-bottom: 4px solid #c0c0c0;
}
.five2{
font-size: 50rpx;
font-weight: 700;
}
.five3{
position: absolute;
left: 180px;
top: 365px;
font-size: 50rpx;
}
.six{
margin-left: 15px;
padding: 10px 5px 10px;
border-bottom: 4px solid #c0c0c0;
}
.six2{
font-size: 50rpx;
font-weight: 700;
}
.six3{
position: absolute;
left: 180px;
top: 415px;
font-size: 50rpx;
}
.seven{
padding: 10px 20px 10px;
border-bottom: 4px solid #c0c0c0;
}
.seven2{
font-size: 50rpx;
font-weight: 700;
}
.seven3{
position: absolute;
left: 180px;
top: 470px;
font-size: 50rpx;
}
wxml代码:
<view class="cc">
<view style="text-align: center;font-size: 16x;position: absolute;left: 120px;">中国阶段人均寿命900个月</view>
<view style="position: absolute;padding-top: 30px;font-size: 26px;left: 70px;">2005年8月至今155个月</view>
<view style=" border:1px solid black;width: 100px;position: absolute;height: 20px;top: 92px;left: 85px;"></view>
<view style="position: absolute;padding-top: 90px;font-size: 16px;padding-left: 188px;"></view><view style="border: 5px;color: black;position: absolute;left: 240px;top: 92px;">换一个日期</view>
<view style=" border:1px solid black;width: 100px;position: absolute;height: 20px;top: 92px;left: 230px;"></view>
<view style="position: absolute;padding-top: 90px;font-size: 16px;padding-left: 490px;"><view style="position: absolute;left: 100px;top: 92px;">清除记录</view></view>
<view><image src="/pages/index/po.jpg" mode="" style="position: absolute;top:140px;left: 85px;height: 370px;width: 250px;"/></view>
<view style="position: absolute;top:540px;font-size: 18px;left:10px;">能把后面前行行走的机会抓住的人,十有八九都会成功</view>
</view>
运行结果: