国庆节之后快乐~~迟到的祝福嘻嘻~

疯玩放浪了8天后,我们也该学点有用知识了,是不?




ios 设备view的背景色为渐变色_ios 设备view的背景色为渐变色


上一章我们实现了第一步—— 获取轮播图的接口数据,

这一章我们将上一章未完的轮播图进行动态渲染,彻底搞定!

我们要做的是将轮播图的数据变成页面标签,并渲染出来。

步骤如下:

(一)

打开index.wxml文件,加入如下代码:


<view class="pyg_index">
 <!-- 搜索框 开始 -->
 <SearchInput></SearchInput>
 <!-- 搜索框 结束 -->
 <!-- 轮播图 开始 -->
<view class="index_swiper">
 <swiper-item
 wx:for="{{swiperList}}"
 wx:key="goods_id">
 <navigator url="{{item.navigator_url}}">
 <image  src="{{item.image_src}}"></image>
 </navigator>
 </swiper-item>
 </swiper>
 <!-- 轮播图 结束 -->
 </view>


保存,页面显示如下:


ios 设备view的背景色为渐变色_轮播图_02


可以看到图片是正常显示的,但是外观很不美观,因为存在众多默认样式,比如:

swiper标签的默认宽高为:100%*150px
image标签存在默认宽高:320px*240px

这两个标签结合起来,就可以看到上图所示的情况。

(二)设置轮播图的宽高

1、查看原图的宽高

打开调试器-点击“wxml”-复制src 路径


ios 设备view的背景色为渐变色_宽高_03


粘贴至浏览器中 - 右键“检查”- 可以看到原图的宽高为:750*340


ios 设备view的背景色为渐变色_轮播图_04


2、使图片的高度自适应,宽度设置为100%

我们可使用image标签中的mode属性进行渲染,同时使用“widthFix”有效值,

使图片的宽高与image标签的内容的宽高成比例变化。

代码如下:


ios 设备view的背景色为渐变色_小程序view设置背景图片_05


即在第一步中的代码中,image标签中补充 mode="widthFix" 这行代码。

保存,小程序页面如下:


ios 设备view的背景色为渐变色_小程序view设置背景图片_06


接下来,将index.wxss修改为index.less文件,加入如下代码:

让图片的高度自适应(省略不用写),宽度为100%


.index_swiper{

 image{
 width: 100%;
 }

}


保存,观察轮播图页面的比例已经正常了。


ios 设备view的背景色为渐变色_轮播图_07


图片的宽度我们设置了,但是高度未设置。

我们点击小程序左上角的“机型”,改变页面比例,比如改为window100%


ios 设备view的背景色为渐变色_自动轮播_08


改变页面比例后,图片只显示了一部分,如下图。

这是因为虽然图片的宽度已设置成功,但图片的高度还是默认的150px。

所以,我们要改变swiper标签的高度,使其与图片的高度一致。


ios 设备view的背景色为渐变色_ios 设备view的背景色为渐变色_09


3、让swiper标签的高度(150px)变成和图片的高度(340px)一致

打开index.less文件,加入swiper标签,设置宽高。


.index_swiper{
  swiper{
 width: 750rpx;
 height: 340rpx;
 image{
 width: 100%;
 }
 }
}


保存,可以看到轮播图的比例已恢复正常。


ios 设备view的背景色为渐变色_宽高_10


上述步骤中,看起来过于繁琐,但却是不可缺少的,因为swiperimage标签中都有默认样式,我们必须要进行处理。再总结一下步骤:

1、查看原图的宽高;
2、使图片的高度自适应,宽度为100%
3、改变swiper标签的高度,使其等于图片的高度。

(三)设置轮播图的自动轮播

图片比例设置成功后,我们需在swiper标签中加入一些属性,来实现轮播图的自动轮播

使用如下三个属性:


ios 设备view的背景色为渐变色_轮播图_11


打开index.wxml文件,将autoplay 、indicator-dots、 circular这三个属性中加入swiper标签中,代码如下:


ios 设备view的背景色为渐变色_小程序view设置背景图片_12


保存,可看到轮播图已成功实现了自动轮播,下方的指示点以及循环轮播。


ios 设备view的背景色为渐变色_自动轮播_13