Android View的Scale属性不会改变宽高

阅读: 评论:0

Android View的Scale属性不会改变宽高

Android View的Scale属性不会改变宽高

View的Scale属性不会改变宽高

今天算是遇到一个问题, 一个View的scale改变之后, 我怎么去计算view里面的位置呢, 比如画一个点在他的某个点上, x和y需要相应进行scale换算吗?

看完上面的内容, 很明显, scale不会改变view的宽高, 那么到底该如何进行下一步呢?

答案就是:

其实就跟当他没有scale的时候计算好x和y值就好了, scale属性只是说看起来缩小了, 实际内容还是在原来宽高布局的.

记录一下, 可以看看源码, 如何实现的.

/*** Sets the amount that the view is scaled in x around the pivot point, as a proportion of* the view's unscaled width. A value of 1 means that no scaling is applied.** @param scaleX The scaling factor.* @see #getPivotX()* @see #getPivotY()** @attr ref android.R.styleable#View_scaleX*/public void setScaleX(float scaleX) {if (scaleX != getScaleX()) {scaleX = sanitizeFloatPropertyValue(scaleX, "scaleX");invalidateViewProperty(true, false);mRenderNode.setScaleX(scaleX);invalidateViewProperty(false, true);invalidateParentIfNeededAndWasQuickRejected();notifySubtreeAccessibilityStateChangedIfNeeded();}}

翻译过来就是:

设置视图在枢轴点周围以x缩放的数量,作为的比例视图的未缩放宽度。值1表示不应用缩放。

看懂非懂, 感兴趣的同学进一步看代码, 我这里就不分析了.

本文发布于:2024-02-02 21:31:13,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170688067146568.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:属性   变宽   Android   View   Scale
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23