当前位置:  开发笔记 > 编程语言 > 正文

UIView使用CGAffineTransformMakeScale缩放为0

如何解决《UIView使用CGAffineTransformMakeScale缩放为0》经验,为你挑选了2个好方法。

是否可以使用CGAffineTransformMakeScale将UIView缩小为0(宽度和高度为0)?

view.transform = CGAffineTransformMakeScale(0.0f,0.0f);

为什么会抛出" : CGAffineTransformInvert: singular matrix." 的错误?



更新:还有另一种将UIView缩小到0的方法

[UIView beginAnimations:nil context:nil]; 
[UIView setAnimationDuration:0.3]; 
view.frame = CGRectMake(view.center.x, view.center.y, 0, 0);

[UIView commitAnimations];

Jason Harris.. 10

很多时候,底层框架需要反转您的变换矩阵.矩阵的逆是一些矩阵M',使得矩阵M和逆矩阵M'的乘积是识别矩阵1.

1 = M*M'

零矩阵没有逆,因此错误消息.



1> Jason Harris..:

很多时候,底层框架需要反转您的变换矩阵.矩阵的逆是一些矩阵M',使得矩阵M和逆矩阵M'的乘积是识别矩阵1.

1 = M*M'

零矩阵没有逆,因此错误消息.



2> Ben Gottlieb..:

我不确定这样做是否可行; 你将开始遇到被零除的问题.如果您尝试这样做,您将创建一个如下所示的转换:

   0  0  0
   0  0  0
   0  0  1

当应用于任何其他变换时,将产生上述变换.

为什么不隐藏视图(如果你想将视图缩小)或将缩放系数设置为0.001(如果你想缩放它)?

推荐阅读
可爱的天使keven_464
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有