Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone ios如何自动调整uilabel的大小';添加或删除文本时的高度(numberOfLines=0)_Iphone_Ios_Resize_Height_Uilabel - Fatal编程技术网

Iphone ios如何自动调整uilabel的大小';添加或删除文本时的高度(numberOfLines=0)

Iphone ios如何自动调整uilabel的大小';添加或删除文本时的高度(numberOfLines=0),iphone,ios,resize,height,uilabel,Iphone,Ios,Resize,Height,Uilabel,我有一个UILabel,显示用户的“个人简历”。我还让用户能够编辑此文本,方法是在用户点击时弹出uitextview,然后在用户完成添加或删除此uitextview中的文本后,我说label.text=textview.text,这样它会更新生物标签的文本。 但是,我希望有一种方法告诉标签根据添加或删除的文本量来确定其高度。有没有办法做到这一点?提前谢谢你 Nathan您可以使用[NSString sizeWithFont:…]测量标签中使用的文本 另见: 这将根据新文本调整标签(高度)(同时考

我有一个UILabel,显示用户的“个人简历”。我还让用户能够编辑此文本,方法是在用户点击时弹出uitextview,然后在用户完成添加或删除此uitextview中的文本后,我说label.text=textview.text,这样它会更新生物标签的文本。
但是,我希望有一种方法告诉标签根据添加或删除的文本量来确定其高度。有没有办法做到这一点?提前谢谢你


Nathan

您可以使用[NSString sizeWithFont:…]测量标签中使用的文本

另见:

这将根据新文本调整标签(高度)(同时考虑字体和换行模式)

注意:从6.0开始,UILineBreakMode已被弃用。改用NSLineBreak

打电话

[labelName sizeToFit];
设置新文本后。还要确保将换行字或换行字符设置为:

[labelName setLineBreakMode:UILineBreakModeWordWrap];

如果您还有其他问题,请告诉我

iOS 7中不推荐使用此方法“sizeWithFont”,而不是此方法。您可以使用以下方法:

CGRect rect = [YourText boundingRectWithSize:CGSizeMake(labelWidth, CGFLOAT_MAX)
                                       options:NSStringDrawingUsesLineFragmentOrigin
                                       context:nil];
 NSLog(@"Height: %f",rect.size.height);

有关更多信息,请查看:

谢谢。这完全可行,但我的标准之一是保持相同的宽度
[labelName setLineBreakMode:UILineBreakModeCharacterWrap];
CGRect rect = [YourText boundingRectWithSize:CGSizeMake(labelWidth, CGFLOAT_MAX)
                                       options:NSStringDrawingUsesLineFragmentOrigin
                                       context:nil];
 NSLog(@"Height: %f",rect.size.height);