微信小程序 UI与容器组件总结
发布时间 - 2026-01-10 23:12:00 点击率:次
微信小程序 UI与容器组件总结
1.总结与概述
2.容器组件
2.1 组件容器(view)
2.2 可滚动视图容器(scroll-view)
2.3 滑块视图容器(swiper)
1.总结与概述
1.1 UI组件总结图
1.2 概述
小程序的UI组件也就是定义用户界面的一系列标签,类似于html标签。一个完整用户响应过程:事件触发——>UI组件接收到事件——>触发js函数响应事件——>更新UI
2.容器组件
2.1 容器组件(view)
(1)总结
(2)例子
效果图
page.wxml
<view> <text class="row-view-title">水平布局:</text> <view class="flex-wrp-row"> <view class="flex-item-red" hover="true" hover-class="hover-style"><text class="color-text">red</text></view> <view class="flex-item-green" hover="true" hover-class="hover-style"><text class="color-text">green</text></view> <view class="flex-item-blue" hover="true" hover-class="hover-style"><text class="color-text">blue</text></view> </view> </view> <view> <text class="column-view-title">垂直布局:</text> <view class="flex-wrp-column" > <view class="flex-item-red" hover="true" hover-class="hover-style"><text class="color-text" >red</text></view> <view class="flex-item-green" hover="true" hover-class="hover-style"><text class="color-text">green</text></view> <view class="flex-item-blue" hover="true" hover-class="hover-style"><text class="color-text">blue</text></view> </view> </view>
page.wxss
.flex-item-red{
background-color: red;
height: 200rpx;
width: 200rpx;
text-align: center;
line-height: 200rpx;
}
.flex-item-green{
background-color: green;
height: 200rpx;
width: 200rpx;
text-align: center;
line-height: 200rpx
}
.flex-item-blue{
background-color: blue;
height: 200rpx;
width: 200rpx;
text-align: center;
line-height: 200rpx
}
.flex-wrp-row{
flex-direction: row;
display: flex;
margin-left: 10rpx;
margin-top: 20rpx;
}
.flex-wrp-column{
flex-direction: column;
display: flex;
margin-left: 10rpx;
margin-top: 20rpx;
}
.color-text{
color: snow;
font-family: 'Times New Roman', Times, serif;
font-weight: bold;
}
.hover-style{
background-color: black;
}
.row-view-title,.column-view-title{
margin-left: 20rpx;
font-family: 'Times New Roman', Times, serif;
font-weight: bold;
}
/*重要属性:
display: flex; //与display:box;是类似,是flexbox的最新语法格式,有更好的适配效果
flex-direction: column; //表示子布局垂直布局
flex-direction: row; //表示子布局为水平布局
*/
2.2 可滚动视图容器(scroll-view)
(1) 总结
(2) 例子
效果图:
page.wxml
<view>
<text>水平滚动布局</text>
</view>
<view class="x-view">
<scroll-view class="scroll-view-x" scroll-x="true" bindscrolltoupper="scrollXToUpper" bindscrolltolower="scrollXToLower" bindscroll="scroll" scroll-left="0" scroll-into-view="{{green}}">
<view id="green" class="x_green"></view>
<view id="red" class="x_red"></view>
<view id="yellow" class="x_yellow"></view>
<view id="blue" class="x_blue"></view>
</scroll-view>
</view>
<view>
<text>垂直滚动布局</text>
</view>
<view class="y-view">
<scroll-view class="scroll-view-y" scroll-y="true" bindscrolltoupper="scrollYToUpper" bindscrolltolower="scrollYToLower" bindscroll="scroll" scroll-top="0" scroll-into-view="{{green}}">
<view id="green" class="y_green"></view>
<view id="red" class="y_red"></view>
<view id="yellow" class="y_yellow"></view>
<view id="blue" class="y_blue"></view>
</scroll-view>
</view>
page.wxss
.x_green{
background-color: green;
width: 500rpx;
height: 300rpx;
display: inline-flex;
}
.x_red{
background-color: red;
width: 500rpx;
height: 300rpx;
display: inline-flex;
}
.x_blue{
background-color: blue;
width: 500rpx;
height: 300rpx;
display: inline-flex;
}
.x_yellow{
background-color: yellow;
width: 500rpx;
height: 300rpx;
display: inline-flex;
}
.y_green{
background-color: green;
width: 100%;
height: 300rpx;
}
.y_red{
background-color: red;
width: 100%;
height: 300rpx;
}
.y_yellow{
background-color: yellow;
width: 100%;
height: 300rpx;
}
.y_blue{
background-color: blue;
width: 100%;
height: 300rpx;
}
.scroll-view-x{
display: flex;
white-space: nowrap;
width: 100%;
margin-bottom: 20px;
margin-top: 10px;
height: 300rpx;
}
.scroll-view-y{
height: 400rpx;
}
/*重要属性:
white-space: nowrap;//设置内部元素不换行显示,与display: inline-flex;属性联合使用才会有水平布局的效果
*/
page.js
//index.js
//获取应用实例
var app = getApp()
//var color_index=['green','red','yellow','blue'];
Page({
data:{
toview:'red',
},
/*滑动到左边触发*/
scrollXToUpper:function(){
console.log('scrollXToUpper')
},
/*滑动到右边触发 */
scrollXToLower:function(){
console.log('scrollXToLower')
},
/*滑动到顶部触发*/
scrollYToUpper:function(){
console.log('scrollYToUpper')
},
/*滑动到左边触发 */
scrollYToLower:function(){
console.log('scrollYToLower')
},
/*滑动触发 */
scroll:function(){
console.log("scroll")
},
onLoad: function () {
console.log('onLoad')
var that = this
},
})
2.3 滑块视图容器(swiper)
(1)总结
(2)例子
效果图:
page.wxml
<swiper data-current="0" current="0" bindchange="itemChangeFunc" circular="true" indicator-dots="{{indicatorDots}}"
autoplay="{{autoplay}}" interval="{{interval}}" duration="{{duration}}">
<block wx:for="{{imgUrls}}" wx:key="swiperkeys">
<swiper-item>
<image src="{{item}}" class="slide-image" width="355" height="150"/>
</swiper-item>
</block>
</swiper>
page.js
//game.js
Page({
data: {
imgUrls: [
'/image/wechat.png',
'http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg',
'http://img06.tooopen.com/images/20160818/tooopen_sy_175866434296.jpg',
'http://img06.tooopen.com/images/20160818/tooopen_sy_175833047715.jpg'
],
indicatorDots: true,
autoplay: true,
interval: 3000,
duration: 1000,
current:1,
},
durationChange: function(e) {
this.setData({
duration: e.detail.value
})
},
durationChange: function(e) {
this.setData({
duration: e.detail.value
})
},
itemChangeFunc:function(e){
// console.log(e.target.dataset.current)
console.log(e.detail)
}
})
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# 微信小程序
# UI与容器组件
# 小程序
# UI与容器组件详解
# 微信小程序 支付功能开发错误总结
# 微信小程序 常用工具类详解及实例
# 微信小程序 基础知识css样式media标签
# 微信小程序 http请求封装详解及实例代码
# 微信小程序 弹幕功能简单实例
# 微信小程序 详解页面跳转与返回并回传数据
# 微信小程序 this和that详解及简单实例
# 微信小程序 基础组件与导航组件详细介绍
# 微信小程序-获得用户输入内容
# 滑块
# 会有
# 希望能
# 谢谢大家
# 类似于
# 换行
# 应用实例
# 素不
# display
# left
# margin
# direction
# height
# background
# column
# wxss
# center
# line
# align
# rpx
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?
php做exe能调用系统命令吗_执行cmd指令实现方式【详解】
桂林网站制作公司有哪些,桂林马拉松怎么报名?
laravel怎么配置和使用PHP-FPM来优化性能_laravel PHP-FPM配置与性能优化方法
zabbix利用python脚本发送报警邮件的方法
百度浏览器如何管理插件 百度浏览器插件管理方法
node.js报错:Cannot find module 'ejs'的解决办法
怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?
Windows11怎样设置电源计划_Windows11电源计划调整攻略【指南】
JavaScript实现Fly Bird小游戏
Laravel如何实现RSS订阅源功能_Laravel动态生成网站XML格式订阅内容【教程】
活动邀请函制作网站有哪些,活动邀请函文案?
,南京靠谱的征婚网站?
Laravel如何使用Livewire构建动态组件?(入门代码)
网站页面设计需要考虑到这些问题
网站制作壁纸教程视频,电脑壁纸网站?
邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?
html5如何实现懒加载图片_ intersectionobserver api用法【教程】
Laravel如何安装Breeze扩展包_Laravel用户注册登录功能快速实现【流程】
如何自定义建站之星模板颜色并下载新样式?
Laravel广播系统如何实现实时通信_Laravel Reverb与WebSockets实战教程
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
Javascript中的事件循环是如何工作的_如何利用Javascript事件循环优化异步代码?
Laravel Admin后台管理框架推荐_Laravel快速开发后台工具
Win11怎么设置虚拟桌面 Win11新建多桌面切换操作【技巧】
Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】
原生JS实现图片轮播切换效果
详解Android中Activity的四大启动模式实验简述
如何在企业微信快速生成手机电脑官网?
如何用狗爹虚拟主机快速搭建网站?
极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?
IOS倒计时设置UIButton标题title的抖动问题
如何在万网自助建站中设置域名及备案?
Win11怎样安装网易有道词典_Win11安装词典教程【步骤】
C++时间戳转换成日期时间的步骤和示例代码
如何快速搭建自助建站会员专属系统?
Java遍历集合的三种方式
网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?
阿里云网站搭建费用解析:服务器价格与建站成本优化指南
千库网官网入口推荐 千库网设计创意平台入口
如何用PHP工具快速搭建高效网站?
Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中
Laravel怎么在Blade中安全地输出原始HTML内容
如何用VPS主机快速搭建个人网站?
如何确保西部建站助手FTP传输的安全性?
做企业网站制作流程,企业网站制作基本流程有哪些?
Laravel怎么设置路由分组Prefix_Laravel多级路由嵌套与命名空间隔离【步骤】
如何快速上传自定义模板至建站之星?
使用Dockerfile构建java web环境
EditPlus中的正则表达式 实战(2)

