一般都是直接用微信提供的组件来进行布局的

在小程序中最好少用id,尽量用class

轮播图就是直接用swiper

直接在微信开发者文档里面-》组件-》swiper-》示例代码

<swiper indicator-dots="{{indicatorDots}}"
autoplay="{{autoplay}}" interval="{{interval}}" duration="{{duration}}">
<block wx:for="{{background}}" wx:key="*this">
<swiper-item>
<view class="swiper-item {{item}}"></view>
</swiper-item>
</block>
</swiper>

①其中indicator-dots是设置轮播图上面那个点的样式 ,用true就是直接写死,也就是保留这个轮播图  

②是否可以轮播通过autoplay

③interval是轮播的时间、duration是间隔的时间

下面进行测试,通过在网上找了三张图片,然后在index.js里面设置了一个imgUrls的数组,把这三张图片的链接都放进去

在index.js中data域里面

  data: {
imgUrls: ['http://pic16.photophoto.cn/20100806/0005018388944073_b.jpg',
'http://k.zol-img.com.cn/dcbbs/19063/a19062586_01000.jpg',
'http://k.zol-img.com.cn/dcbbs/19063/a19062586_01000.jpg'
] },

然后就可以在index的html里面调用了,通过wx:for来遍历这个数组里面的每一个元素,最好就是添加上wx:key来指定下标index

通过给image提供item作为src链接

效果图:

但是可以看到,这边都是没在中心区域的,然后偏离的了

==所以这个时候就要对轮播图进行样式的添加,让他的位置变得正常起来即可了

.index-swiper{margin: 20rpx;}
.index-swiper image{
width: 100%;
}

通过给整个轮播图的margin进行设置,然后给轮播图里面的每一个图片都设置了宽度

效果图:

之后让这个图片更好看一点的话,就可以给这个图片设置圆角的,

搞了圆角之后会发现上面是圆角的,但是下面还是方的,这个时候一般都是因为在wxml中就给图片设置了宽度和高度,才出现这个情况,所以要把

提前设置的宽度和高度都高掉,然后还要通过wxss把这个轮播图的高度也定死了,然后把轮播图也加上圆角,和溢出隐藏

.index-swiper{margin: 5rpx 20rpx 5px;
height: 300rpx;
border-radius: 10rpx;
overflow: hidden;}
.index-swiper image{
width: 100%;
border-radius: 10rpx;
overflow: hidden;
}

效果图:

就达到了四个角都是圆角的效果了

如果是要对这个轮播图衔接滑动得话,也可以通过circular来设置得

circular="{{true}}"

2、下面就是对两个 推荐  最新进行排榜了】

直接定义两个view然后放在一个大的view里面

<view class="index-tab">
<view>推荐</view>
<view>最新</view>
</view>

这种布局在wx里面一般都是直接用flex布局会好得多的

先对整个大的 定义为flex布局

之后对里面两个view的项目进行flex=1  也就是宽度自适应,=1的时候由flex布局的知识,他们就会变大,由于都等于=1

所以会把全部的空格都占满,然后占的空间也都是50%的

然后还要把里面的文字进行居中

.index-tab{
display:flex;
}
.index-tab view{
flex:;
}

效果图

由于这个是选项框,也就是选择其中一个就可以看到对应的内容

所以就要加上选中的样式会变成什么样的,通过.active来添加样式(这里是给其中一个写死了)

之后再对这个padding和margin撑出来,好看点,然后再把选中的文字变成是红色的即可了

得到的效果就是:

3、之后就是对列表中的推荐或者最新用户的信息显示了

.index-list{display: flex;
flex-wrap: wrap;
/* //z自动转行} */
}
.index-list-item{width: 50%;}
.index-list-item image{
width: 90%;
height: 250rpx;
margin: 0 auto;
display: block;
}

通过flex布局 ,为了抗议主动换行,就抗议用wrap

为了让每张图片都抗议居中,通过

  margin: 0 auto;
display: block;
得到的效果:

把图片搞好了,还要把点赞等等信息也加上才行了

注意:在wx中text标签其实和html中的span很像,就是用于考研放一行的非块级标签

只是给了这个昵称和点赞部分进行了如下设置发现,两个部分都没在两边放着

.index-list-text{
/* 让用户昵称和点赞部分分开在两边即可了 */
display:flex;
justify-content:space-between;
}

效果图:

这是因为这整个部分用的是text(文本的话就不行了,要用块级的view,并且还要给这个view设置宽度

<text class="index-list-text">
<!-- 昵称 -->
<text>小喵喵</text>
<text>
<!-- 点赞图标 -->
<text class="iconfont icondianzan"></text>
<!-- 点赞数 -->
<text>100</text>
</text>
</text>
.index-list-text{
width: 90%;
/* 让用户昵称和点赞部分分开在两边即可了 */
display:flex;
justify-content:space-between;
}

才行的

效果图:

然后还发现了这个昵称【小喵喵】跑到左边去了,所以就要对这个view 中的文本text进行居中,即可

.index-list-text{
width: 90%;
/* 让用户昵称和点赞部分分开在两边即可了 */
display:flex;
margin: 0 auto;
justify-content:space-between;
}

【小细节】在列表中的图片,其实是不成比例的,导致被压缩,可以在wx开发文档-》组件-》媒体组件-》image

使用下面的aspectfill 来保持横纵比缩放了

Day7-微信小程序实战-交友小程序首页UI的更多相关文章

  1. Day8-微信小程序实战-交友小程序-首页用户列表渲染及多账号调试及其点赞功能的实现

    在这之前已经把编辑个人的所有信息的功能已经完成了 之后先对首页的列表搞动态的,之前都是写死的静态 1.之前都是把好友写死的,现在就在js里面定义一个数组,用循环来动态的绑定 在onReady中定义,取 ...

  2. Day10-微信小程序实战-交友小程序-自定义callPhone 和copyText组件

    ---为了方便用户可以拨打电话和复制微信号(下面就要实现这样的两个功能) 注意:在小程序中是没办法直接的添加用户的微信的,所以就只能是复制微信号 (这种东西的话可以直接去做,也可以做成组件,做出组件的 ...

  3. Day10-微信小程序实战-交友小程序-添加好友功能之创建并更新message信息

    1.首先要在 添加好友 这个按钮上添加一个事件,也就是在detail.wxml的添加好友这个按钮的哪里,添加一个点击事件 handleAddFriend 并且添加好友还要考虑,现在是已登陆状态还是未登 ...

  4. Day11-微信小程序实战-交友小程序-附近的人(地图的形式)及位置获取

    回顾:在下面的tabbar中,我们已经实现了首页 消息 我的,就剩下”附近“页面了 ”附近“的页面主要是用地图来进行展示的(可以显示我的位置,也可以显示周围附近的人的位置) (在地图里面点击它的头像的 ...

  5. Day12-微信小程序实战-交友小程序-优化“附近的人”页面与serach组件的布局和样式以及搜索历史记录和本地缓存*内附代码)

    回顾/:我们已经实现了显示附近的人的功能了,可以多个人看到附近的人页面了 但是还是要进行优化有几个问题:1.我们用户选择了其他的自定义头像之后,在首页可以看到头像的变化,但是在附近的人中头像会变成报错 ...

  6. Day12-微信小程序实战-交友小程序-搭建服务器与上传文件到后端

    要搞一个小型的cms内容发布系统 因为小程序上线之后,直接对数据库进行操作的话,慧出问题的,所以一般都会做一个管理系统,让工作人员通过这个管理系统来对这个数据库进行增删改查 微信小程序其实给我们提供了 ...

  7. Day10-微信小程序实战-交友小程序-创建friendList字段实现好友关系(添加好友功能)--内附代码

    回顾:之前我们进行了删除的功能,以及对message消息的增删,下面实现添加好友的功能 我们先在数据库中,在message这个字段的list里面,添加上测试号的id,就是模拟这个两个测试号要加我主号的 ...

  8. Day10-微信小程序实战-交友小程序-实现删除好友信息与子父组件间通信

    回顾:上一次已经把消息的布局以及样式做好了 效果图: 在removeList.js文件中,messageId就是发起这个消息的用户了 先查看一下自定义组件的生命周期 https://developer ...

  9. 【SSH网上商城项目实战14】商城首页UI的设计

    转自:https://blog.csdn.net/eson_15/article/details/51373403 前面我们利用EasyUI和SSH搭建好了后台的基本框架,做好了后台的基本功能,包括对 ...

随机推荐

  1. 第7章 PCA与梯度上升法

    主成分分析法:主要作用是降维 疑似右侧比较好? 第三种降维方式: 问题:????? 方差:描述样本整体分布的疏密的指标,方差越大,样本之间越稀疏:越小,越密集 第一步: 总结: 问题:????怎样使其 ...

  2. linux高级管理第十二章--rsync

    实验部分 1.安装rsync 2.配置文件 3.配置密码 4.后续 5.为了测试,创建几个文件 配置实时同步 1.调整inotify内核参数 安装inotify-tools 测试同步 编写脚本 验证 ...

  3. SD.Team主题形象小人偶

              W e ♥ S D     ♫ ♪ 咔咔咔~可能源码冲突会造成小人偶光头 :)

  4. 02 . Prometheus告警处理

    Prometheus告警简介 告警能力在Prometheus的架构中被划分成两个独立的部分.如下所示,通过在Prometheus中定义AlertRule(告警规则),Prometheus会周期性的对告 ...

  5. 电子邮件协议及GO发送QQ邮件

    目录 一.电子邮件的工作机制 1.1 SMTP 1.2 POP3 1.3 IMAP 二.邮件地址 三.MIME信息 四.使用golang发送qq邮件 一.电子邮件的工作机制 提供电子邮件服务的协议叫做 ...

  6. Linux、Android系统调用从上层到底层的调用路径浅析

    参考: https://blog.csdn.net/liuhangtiant/article/details/85149369 http://blog.sina.com.cn/s/blog_79433 ...

  7. Java实现 蓝桥杯 算法提高 矩阵乘法(暴力)

    试题 算法提高 矩阵乘法 问题描述 小明最近刚刚学习了矩阵乘法,但是他计算的速度太慢,于是他希望你能帮他写一个矩阵乘法的运算器. 输入格式 输入的第一行包含三个正整数N,M,K,表示一个NM的矩阵乘以 ...

  8. Java实现 LeetCode 725 分隔链表(暴力)

    725. 分隔链表 给定一个头结点为 root 的链表, 编写一个函数以将链表分隔为 k 个连续的部分. 每部分的长度应该尽可能的相等: 任意两部分的长度差距不能超过 1,也就是说可能有些部分为 nu ...

  9. Java实现 LeetCode 682 棒球比赛(暴力)

    682. 棒球比赛 你现在是棒球比赛记录员. 给定一个字符串列表,每个字符串可以是以下四种类型之一: 1.整数(一轮的得分):直接表示您在本轮中获得的积分数. 2. "+"(一轮的 ...

  10. Java实现计数排序

    1 问题描述 给定一组数据,请使用计数排序,得到这组数据从小到大的排序序列. 2 解决方案 2.1比较计数排序 下面算法的时间复杂度为O(n^2),空间复杂度为O(n).此方法对于任意一组数据均可排序 ...