我正在尝试将UILabel旋转45度。我将transform
属性设置为CGAffineTransformMakeRotation(M_PI * 0.25)
但是当我这样做时,UILabel就会消失。如果我将0.25
更改为0.26
,我可以看到UILabel的一瞥(见下文)
旋转前的UILabel:
代码:self.myLabel.transform = CGAffineTransformMakeRotation(M_PI * 0.26);
如果我错过了任何可能有用的信息,请告诉我们!
似乎必须在应用旋转之前设置框架。
答案 0 :(得分:4)
您的代码应该可以正常工作,所以还有其他事情没有发布代码。我建议检查自动调整掩码以及可能正在操作变换的其他任何地方。从外观和描述来看,它几乎看起来像是通过3D旋转沿错误的轴旋转,导致您在零宽度/厚度的位置查看标签面,就像看着纸头的边缘一样
答案 1 :(得分:1)
问题的另一个解决方案可能是将UILabel嵌入到另一个视图中,并使用外部视图在屏幕上定位标签。
另一篇帖子提到了我看到UILabel中文本失真或消失的问题。他们的解决方案是将所有外部弹簧设置在UILabel上。这对我有用,但是我的标签没有正确定位在屏幕上,特别是在设备旋转期间。所以我认为将我的UILabel嵌入到容器视图中会让我使用容器视图来定位我的标签,只使用顶部和右侧弹簧设置,同时仍允许使用CGAffineTransformMakeRotation正确旋转UILabel。
希望这可以帮助那些也遇到这个问题的人。