小程序图片自适应缩放设置

小程序图片自适应缩放设置,第1张

小程序的image组件提供了缩放的模式选择,默认的scaletofill就是设置固定的宽高模式比较少使用,更多的是需要自适应宽高的情况。

widthfix多适用于通栏,width:100%,高度不同设备自适应的情况。此时会按照原图比列自动缩放高度,常用于轮播图。

aspectFill多用用在固定大小的范围内显示,区别是可以保留一边,除去通栏外一般用处较多。

个别情况下需要图片始终居中缩放,多用在用户头像圆环之类,一般留在保留中心内容的部分,文档中暂没,需要单独设置。

mode 属性:

默认值:scaleToFill —- 不保持纵横比例缩放图片,使图片的宽高完全拉伸至填满image标签

aspectFit —- 保持纵横比例缩放图片,使图片的长边能够完全显示出来,也就说图片可以完整的显示出来

aspectFill —– 保持纵横比例缩放图片,只保证图片的短边能够完全显示出来,也就是说,图片通常只在水平或垂直方向是完整的,另一个方向将会发生截取

top —- 不缩放图片,只显示图片的顶部区域

bottom —- 不缩放图片,只显示图片的底部区域

center —- 不缩放图片,只显示图片的中间区域

left —- 不缩放图片,只显示图片的左边区域

right —– 不缩放图片,只显示图片的右边区域

top left —- 不缩放图片,只显示图片的左上边区域

top right —- 不缩放图片,只显示图片的右上边区域

bottom left —- 不缩放图片,只显示图片的左下边区域

bottom right —- 不缩放图片,只显示图片的右下边区域

4.隐藏NavigationBar

5.VM11106:1 Do not have login handler in current page: pages/login/login. Please make sure that login handler has been defined in pages/login/login, or pages/login/login has been added into app.json

解决方案:

2.调整app.json中Pages里面的页面注册顺序 ;

3.检查wxml中bindtap是否在js里面将方法创建。

6.switch样式大小调整

大家都知道微信官方提供的switch 能改变color 但是改变大小 常用的width height 不起作用

但是可以这样修改

7.input 不沾满屏幕右侧有留白

使用flex布局的时候明明 input style 设置了flex=1 的属性 可是input还是站不满整个屏幕的宽度,右侧有留白,文字被遮挡, 不知道是不是一个bug,

解决方案: 在input外面包一层view style设置flex=1 用于沾满整个屏幕 input用于显示文字

————————————————

1.display取值

2.float(取值:left,right,none,inherit。)

3.clear:该属性指出不允许有浮动对象的边。(取值:left,right,both,none.)

4.visibility:是否显示对象(取值:visible,hidden,collapse。)

5.overflow:处理溢出内容的方式。(取值:visible,hidden,scroll,auto。)

其他属性:

微信小程序 拍照和相机选择详解

前言:

小程序中获取图片可通过两种方式得到,第一种是直接打开微信内部自己的样式,第一格就是相机拍照,后面是图片,第二种是d框提示用户是要拍照还是从相册选择,下面一一来看。

选择相册要用到wx.chooseImage(OBJECT)函数,具体参数如下:

直接来看打开相机相册的代码:

Page({   data: {    tempFilePaths: ''   },   onLoad: function () {   },   chooseimage: function () {    var that = this   wx.chooseImage({     count: 1, // 默认9      sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有      sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有      success: function (res) {      // 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片       that.setData({       tempFilePaths: res.tempFilePaths      })     }    })     },          })      

方法一效果图如下:

个人认为第二种用户体验要好一点,效果如下:

点击获取d框提示,代码如下:

Page({   data: {    tempFilePaths: ''   },   onLoad: function () {   },   chooseimage: function () {    var that = this   wx.showActionSheet({     itemList: ['从相册中选择', '拍照'],     itemColor: "#CED63A",     success: function (res) {      if (!res.cancel) {       if (res.tapIndex == 0) {        that.chooseWxImage('album')       } else if (res.tapIndex == 1) {        that.chooseWxImage('camera')       }      }     }    })     },     chooseWxImage: function (type) {    var that = this   wx.chooseImage({     sizeType: ['original', 'compressed'],     sourceType: [type],     success: function (res) {      console.log(res)     that.setData({       tempFilePaths: res.tempFilePaths[0],      })     }    })   }      })      

文件的临时路径,在小程序本次启动期间可以正常使用,如需持久保存,需在主动调用 wx.saveFile,在小程序下次启动时才能访问得到。

布局文件:

<button style="margin:30rpx" bindtap="chooseimage">获取图片</button> <image src="{{tempFilePaths }}" catchTap="chooseImageTap" mode="aspectFit" style="width: 100%height: 450rpx" />   


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12000486.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存