iOS   发布时间:2022-05-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – 垂直对齐UILabel大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我试图在我的应用程序的UILabel视图中垂直对齐文本.问题是我希望文本垂直对齐顶部,标签大小为280 x 150.我只能实现这两件事之一.如果我删除该行 [myLabel sizeToFit]; 然后文本的对齐没问题,但是大小搞砸了.但是如果我添加上面的行,那么对齐就搞砸了但是大小没问题.我该如何解决这个问题. 我在下面添加了代码 – CGRect labelFrame = CGRectMake
我试图在我的应用程序的UILabel视图中垂直对齐文本.问题是我希望文本垂直对齐顶部,标签大小为280 x 150.我只能实现这两件事之一.如果我删除该行

[myLabel sizeToFit];

然后文本的对齐没问题,但是大小搞砸了.但是如果我添加上面的行,那么对齐就搞砸了但是大小没问题.我该如何解决这个问题.

我在下面添加代码

CGRect labelFrame = CGRectMake(22,50,280,150);
UILabel *myLabel = [[UILabel alloc] initWithFrame:labelFrame];
[myLabel setText:finalRecipe];
[myLabel setBACkgroundColor: [UIColor lightGrayColor]];
[myLabel setnumberOfLines:0];
[myLabel sizeToFit];
[self.view addSubview:myLabel];

解决方法

我是FXLabel的作者,然我不认识Manish,但我相信他正在努力帮助(如果他在为我做广告,我当然没有要求他,而且我没有付钱给他 – 抱歉马尼什!).

FXLabel的一个特性是它尊重标签的UIContentMode属性,如“接口”构建器中所设置的那样.这意味着你可以设置label.contentMode = UIViewContentModeTop;将文本对齐到标签视图的顶部(这对常规UILabel不起作用).相关的例子在这里

FXLabel是UILabel的一个子类,所以我认为对于提出的问题来说这是一个非常好的解决方案.但是,如果海​​报宁愿在不使用第三方库的情况下解决问题(这是可以理解的),那么这里是代码

CGRect labelFrame = CGRectMake(22,150);
UILabel *myLabel = [[UILabel alloc] initWithFrame:labelFrame];
[myLabel setText:finalRecipe];
[myLabel setBACkgroundColor: [UIColor lightGrayColor]];
[myLabel setnumberOfLines:0];

CGFloat fontSize = 0.0f;
labelFrame.size = [myLabel.text sizeWithFont:myLabel.font
                                minFontSize:myLabel.minimumFontSize
                             actualFontSize:&fontSize
                                   forWidth:labelFrame.width
                            lineBreakmode:myLabel.lineBreakmode];

myLabel.frame = labelFrame;
[self.view addSubview:myLabel];

注意:(这是未经测试的,如果有任何拼写错误,请道歉)

大佬总结

以上是大佬教程为你收集整理的ios – 垂直对齐UILabel全部内容,希望文章能够帮你解决ios – 垂直对齐UILabel所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。