有没有一种简单的方法来获取UIImageView图像的可见/绘制矩形?rect需要对任何选定的contentMode正确,并且应该考虑masksToBounds。
示例1:100x100 UIImageView,带有200x200图像,masksToBounds=YES和contentMode=BottomLeft,应返回x=0,y=0(或100,取决于坐标系),width=100,height=100。
示例2:具有200x200图像的100x100 UIImageView,masksToBounds=YES和contentMode=Center应返回x=50,y=50,width=100,height=100。
还是我必须根据UIImageView的contentMode和masksToBounds设置自行计算?我认为UIImageView的CALayer上的属性可以帮助我实现这一点,但到目前为止,我无法获得正确的值。
经过一系列的研究,我很确定,不可能得到正确的答案。您需要手动计算。
您可以使用视图的contentMode属性,也可以使用层的contentGravity属性来确定图像在imageView中的位置。