iOS – 试图旋转文本标签,标签消失

我正在试图旋转我的视angular90度的标签。 我已经尝试了以下两种方法来做到这一点,标签从屏幕上消失。 我三重检查了属性是否正确连接。 有什么想法吗?

尝试一个:

// rotating labels 90 degrees self.labelCloseScroll.transform = CGAffineTransformMakeRotation (3.14/2); 

尝试两个:

 CGAffineTransform rotate = CGAffineTransformMakeRotation(3.14/2); rotate = CGAffineTransformScale(rotate, 1, 1); [self.labelCloseScroll setTransform:rotate]; 

我不是100%确定它是否工作,但为什么你不使用M_PI_2 。 这只是简单的想法,你假设Value of Pi3.14但确切的价值是3.14159...

我这样做,它工作得很好:

 UILabel *lbl = [[UILabel alloc] initWithFrame:CGRectMake(10, 10, 50, 70)]; lbl.text = @"New"; lbl.backgroundColor = [UIColor clearColor]; lbl.textColor = [UIColor whiteColor]; lbl.highlightedTextColor = [UIColor blackColor]; lbl.font = [UIFont systemFontOfSize:12]; lbl.transform = CGAffineTransformMakeRotation(M_PI_2); [self.view addSubview:lbl]; 

您也可以检查这些问题的答案:

如何渲染一个旋转的UIlabel

在其中心旋转UILabel

希望这会对你有所帮助。

可能只是因为文本的视angular太小了。 当文本无法在iOS的标签视图中完全显示时,它就会消失,而不是继续显示。 也许这是一个故意的苹果政策,以防止应用程序运输与裁减文本,并迫使开发者修复;)

这听起来好像这是正在发生的事情。 你已经说过,旋转文字的时候文字越来越小,这表明你的缩放文本符合标签视图中设置的属性。 当约束视图缩小时,这将缩小文本。 但是文字在消失之前只会缩小。

如果标签视图本身似乎足够大,那么一定要检查标签所包含的每个父视图的边界,通过视图层次结构。