android-以编程方式缩放和居中imageView给定的矩形范围

android-以编程方式缩放和居中imageView给定的矩形范围,第1张

概述我的问题假设我有一个位图-将其称为尺寸为100×75的bmap(bmap.getWidth()xbmap.getHeight())假设我有一个矩形,矩形,坐在电话屏幕上的一点(x,y),尺寸为500×350(宽x高)我怎么写一段代码,将这个位图放在边界矩形内.注意:因为我使用的是ContraintLayout,所以没有父级或相对性的概

我的问题

假设我有一个位图-将其称为尺寸为100×75的bmap(bmap.getWIDth()x bmap.getHeight())

假设我有一个矩形,矩形,坐在电话屏幕上的一点(x,y),尺寸为500×350(宽x高)

我怎么写一段代码,将这个位图放在边界矩形内.

注意:因为我使用的是ContraintLayout,所以没有父级或相对性的概念.

另外,我想要一个在(0,1]范围内的缩放变量,该变量缩放bmap,但它将其位置保持在边界矩形rect的中心.

我的可怕尝试:

ImageVIEw imgVIEw = new ImageVIEw(this.context);imgVIEw.setMaxWIDth((int)(wIDth*scale));imgVIEw.setMinimumWIDth((int)(wIDth*scale));imgVIEw.setMaxHeight((int)(height*scale));imgVIEw.setMinimumHeight((int)(height*scale));imgVIEw.setimageBitmap(bmap);imgVIEw.setX(x+((wIDth-bmap.getWIDth())/2));imgVIEw.setY(y+((height-bmap.getHeight())/2));imgVIEw.setAdjustVIEwBounds(true);constraintLayout.addVIEw(imgVIEw);

这给出了以下结果(绿色圆圈的比例= 1,红色圆圈的比例= 0.6

有任何想法吗?我真的被卡住了.

解决方法:

对于这个问题,我看到的最简单的解决方案是使用androID提供的容器来帮助我们获得此行为.首先,可以在约束布局内使用相对布局.没问题.使用两个相对布局以及其中的图像视图,只需使用centerInParent属性即可完成 *** 作.我强烈建议不要以编程方式调整视图的大小.使用您拥有的容器和工具.

总结

以上是内存溢出为你收集整理的android-以编程方式缩放和居中imageView给定的矩形范围全部内容,希望文章能够帮你解决android-以编程方式缩放和居中imageView给定的矩形范围所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

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

原文地址: http://outofmemory.cn/web/1091911.html

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

发表评论

登录后才能评论

评论列表(0条)

保存