發(fā)布時間:2024-01-18 20:50:01 瀏覽量:233次
微信小程序云開發(fā)實戰(zhàn)-答題積分賽小程序

5行布局,即5個塊級元素,輪播圖、通告欄、個人信息、功能區(qū)、版權(quán)。

實現(xiàn)輪播圖效果,可以拆分一下,先實現(xiàn)圖片展示效果,再實現(xiàn)輪播效果。需要使用圖片組件image、滑塊視圖容器swiper。
在index.wxml中,編寫布局代碼:
<image src="/images/b2.jpg"></image>
保存后,在模擬器實時預(yù)覽效果:

顯然,這樣的頁面效果并不符合我們的預(yù)期。我們想要的頁面效果是,圖片寬度要占滿屏幕的。
所以,我給它設(shè)置了兩項:
在index.wxml中,添加屬性mode和class,并設(shè)置其值,編寫布局代碼:
<image src="/images/b2.jpg" mode='widthFix' class="banner-img"></image>在index.wss中,添加設(shè)置寬度的樣式,編寫樣式代碼:
.banner-img {
width: 100%;
}保存后,在模擬器實時預(yù)覽效果:

補充說明:
關(guān)于image組件的mode=widthFix。
widthFix:縮放模式,寬度不變,高度自動變化,保持原圖寬高比不變。
swiper只可放置swiper-item組件。
在index.wxml中,編寫布局代碼:
<swiper>
<swiper-item>
<image src="/images/b2.jpg" mode='widthFix' class="banner-img"></image>
</swiper-item>
</swiper>保存后,在模擬器實時預(yù)覽效果:

因為只有一張圖片,所以看不出來,但是你可以左右滑動試試看,就明白了。
好吧,我們多添加兩個,再完善一下,在index.wxml中,編寫布局代碼:
<swiper class="screen-swiper" indicator-dots="{{true}}">
<swiper-item>
<image src="/images/b2.jpg" mode='widthFix' class="banner-img"></image>
</swiper-item>
<swiper-item>
<image src="/images/b3.jpg" mode='widthFix' class="banner-img"></image>
</swiper-item>
<swiper-item>
<image src="/images/b4.jpg" mode='widthFix' class="banner-img"></image>
</swiper-item>
</swiper>保存后,在模擬器實時預(yù)覽效果:

看著輪播圖效果就已經(jīng)基本完善了。但是,想讓它實現(xiàn)自動輪播,怎么辦?
再添加幾個屬性吧,在index.wxml中,編寫布局代碼:
<!-- 輪播圖 start -->
<swiper class="screen-swiper" indicator-dots="{{true}}" autoplay="{{true}}" interval="5000" duration="500">
<swiper-item>
<image src="/images/b2.jpg" mode='widthFix' class="banner-img"></image>
</swiper-item>
<swiper-item>
<image src="/images/b3.jpg" mode='widthFix' class="banner-img"></image>
</swiper-item>
<swiper-item>
<image src="/images/b4.jpg" mode='widthFix' class="banner-img"></image>
</swiper-item>
</swiper>
<!-- 輪播圖 end -->補充說明,關(guān)于swiper組件本次所應(yīng)用到的屬性:

在index.wxml中,編寫布局代碼:
<!-- 通告欄 start -->
<view class="bg-orange light padding-sm text-sm">
<text class="icon-notice"></text>
<text>歡迎來到「護網(wǎng)專題信息安全知識競答」,S2賽季火熱進行中~</text>
</view>
<!-- 通告欄 end -->在index.wxml中,編寫布局代碼:
<!-- 個人信息區(qū)域 start -->
<view class="container">
<view class="power padding-left-sl">
<view class="cu-avatar">
<image class="avatar" src="/images/0.png" mode="widthFix"></image>
</view>
<view class="power_info">
<view class="power_info_text">
<view class="power_info_text_title">張三</view>
<view class="power_info_text_tip">積分:100</view>
</view>
<image class="power_info_more" src="/images/arrow.svg"></image>
</view>
</view>
</view>
<!-- 個人信息區(qū)域 end -->在index.wss中,編寫樣式代碼:
.container {
display: flex;
flex-direction: column;
align-items: center;
box-sizing: border-box;
}
.power {
margin-top: 30rpx;
border-radius: 5px;
background-color: white;
width: 93%;
padding-bottom: 1rpx;
position: relative;
border: 2rpx solid #ddd;
}
.padding-left-sl {
padding-left: 130rpx;
}
.cu-avatar {
position: absolute;
top: 40rpx;
left: 20rpx;
width: 100rpx;
}
.power_info {
display: flex;
padding: 30rpx 25rpx;
align-items: center;
justify-content: space-between;
}
.power_info_more {
width: 30rpx;
height: 30rpx;
transform: rotate(0deg);
}
.power_info_less {
width: 30rpx;
height: 30rpx;
transform: rotate(270deg);
}
.power_info_text {
display: flex;
flex-direction: column;
}
.power_info_text_title {
font-weight: 400;
font-size: 35rpx;
}
.power_info_text_tip {
color: rgba(0, 0, 0, 0.4);
font-size: 25rpx;
margin-top: 10rpx;
}
.power_item {
padding: 30rpx 25rpx;
display: flex;
justify-content: space-between;
}
.power_item_title {
font-size: 30rpx;
}
.power_item_icon {
width: 30rpx;
height: 30rpx;
}保存后,在模擬器實時預(yù)覽效果:

在index.wxml中,編寫布局代碼:
<!-- 主功能按鈕區(qū)域 start -->
<view class='grid col-2 padding-left-xs padding-right-xs padding-top-sm'>
<view class='padding-sm'>
<view class='bg-sky padding radius btn-box'>
<view class="text-lg">開始答題</view>
<view class='margin-top-sm text-Abc'>從題庫中隨機抽題</view>
<view class="icon-box">
<text class="icon-writefill text-white"></text>
</view>
</view>
</view>
<view class='padding-sm'>
<view class='bg-yellow padding radius btn-box'>
<view class="text-lg">積分排名</view>
<view class='margin-top-sm text-Abc'>積分由高到低排行</view>
<view class="icon-box">
<text class="icon-upstagefill text-white"></text>
</view>
</view>
</view>
</view>
<!-- 主功能按鈕區(qū)域 end -->在index.wss中,編寫樣式代碼:
.line {
width: 95%;
margin: 0 auto;
height: 2rpx;
background-color: rgba(0, 0, 0, 0.1);
}
.icon-box {
text-align: right;
padding-top: 50rpx;
}
.icon-box text {
font-size: 150rpx;
}保存后,在模擬器實時預(yù)覽效果:

在index.wxml中,編寫布局代碼:
<!-- 底部版權(quán)聲明 start -->
<view class="environment">
版權(quán)所有 ?木番薯科技
</view>
<!-- 底部版權(quán)聲明 end -->在index.wss中,編寫樣式代碼:
.environment {
color: #ccc;
font-size: 24rpx;
margin-top: 15%;
text-align: center;
}保存后,在模擬器實時預(yù)覽效果:

這樣,首頁的靜態(tài)界面就完成了。
實現(xiàn)頁面跳轉(zhuǎn)邏輯交互,有兩種方式:
1、通過導航組件 navigator,添加頁面鏈接的方式實現(xiàn);
2、通過API路由wx.navigateTo,添加點擊事件監(jiān)聽及其處理函數(shù)的方式實現(xiàn);
這里,我選擇后者去進行實現(xiàn)。
添加點擊事件,在index.wxml中,編寫布局代碼:

實現(xiàn)路由跳轉(zhuǎn),在index.js中,編寫布局代碼:
goToMy() {
wx.navigateTo({
url: '../my/my'
})
}添加點擊事件,在index.wxml中,編寫布局代碼:

實現(xiàn)路由跳轉(zhuǎn),在index.js中,編寫布局代碼:
goToTest() {
wx.navigateTo({
url: '../test/test'
})
}添加點擊事件,在index.wxml中,編寫布局代碼:

實現(xiàn)路由跳轉(zhuǎn),在index.js中,編寫布局代碼:
goToRank() {
wx.navigateTo({
url: '../rank/rank'
})
}
熱門資訊
1. 10個免費學習UI設(shè)計的網(wǎng)站 提升你的設(shè)計能力
怎樣可以提升你的UI設(shè)計能力!第一個:站酷站酷想必是設(shè)計師都知道的一個網(wǎng)站,里面不止有UI設(shè)計的資源,還有其他設(shè)計的,不如:平面設(shè)計、網(wǎng)頁設(shè)計、字體...
2. iPhone6的UI設(shè)計尺寸規(guī)范,原來如此重要!
想要了解iPhone6界面設(shè)計的尺寸規(guī)范嗎?這里為您詳細介紹iPhone6的UI設(shè)計尺寸規(guī)范,包括界面尺寸、圖標尺寸、可點擊高度規(guī)范、搜索欄高度規(guī)范以及界面元素之間的距離規(guī)范。
3. 移動端UI設(shè)計中常見的5種APP界面類型,你get到了嗎?
通過介紹移動端UI設(shè)計中的閃屏頁、引導頁、浮層引導頁、空白頁和首頁等5種APP界面類型,幫助大家更好地了解UI設(shè)計的基本知識
4. 12個絕佳的UI設(shè)計網(wǎng)站,助力你的創(chuàng)作之旅!
將為大家介紹12個絕佳的UI設(shè)計網(wǎng)站,這些網(wǎng)站不僅可以為你提供靈感,還可以幫助你學習新的技巧,助力你的創(chuàng)意之旅!dribbbleDribbble 是一個面向設(shè)計師的...
5. 移動端列表頁和表單頁設(shè)計秘訣:讓你的APP點擊率翻倍
在移動端設(shè)計中,列表頁和表單頁是不可或缺的部分。一個好的列表頁和表單頁設(shè)計能夠讓用戶輕松地獲取信息并產(chǎn)生點擊欲望,從而提高點擊率。本文將為你...
6. 史上最全,平面設(shè)計UI設(shè)計必備的77個國內(nèi)外素材、設(shè)計資源網(wǎng)站
ui設(shè)計社區(qū),大神太多了。3、behance: https://www.behance.net/ ,著名設(shè)計... 對于品牌設(shè)計師來說,除了圖案素材收集之外,還有一個很重要的,就是設(shè)計故...
7. 推薦10本適合UI設(shè)計師看的書籍,輕松掌握技能!
對于想要提高自己的設(shè)計能力和創(chuàng)造力的小白和UI設(shè)計師來說,這本書是一個很好的選擇。4.《設(shè)計的覺醒》(IKKO TANAKA)推薦理由: 這本書是日本現(xiàn)代平面...
8. 設(shè)計中的色彩心理學:淺析中西方色彩的歷史演變與設(shè)計應(yīng)用
摘要:本文探討了色彩的歷史演變和設(shè)計應(yīng)用。通過對色彩在早期文明社會中的實用運用、不同文化背景下色彩觀念的差異、色彩在設(shè)計中的重要性以及新興技...
9. 武漢UI設(shè)計培訓班費用怎么樣?想學UI設(shè)計要多少錢?
想了解武漢UI設(shè)計培訓班的費用是多少嗎?不知道學UI設(shè)計要花多少錢?不妨看看這篇文章,了解UI設(shè)計培訓班的學費價格以及學習內(nèi)容。
10. 零基礎(chǔ)學UI設(shè)計要多久?培訓完能拿多少工資?
探索零基礎(chǔ)UI設(shè)計培訓的時長與薪資前景。了解數(shù)字藝術(shù)教育領(lǐng)域的專業(yè)課程,以及培訓后的職業(yè)發(fā)展機會。
最新文章
同學您好!