0
我的应用程序要求用户输入一些细节,然后通过使用标签通过另一个视图显示。如何调整和转换标签?
由于用户可以输入文本的可变长度,而标签最初有一个固定的长度和宽度,我使用了如下所示的代码来调整标签尺寸:
CGSize maximumLabelSize = CGSizeMake(296,9999);
CGSize expectedLabelSize = [yourString sizeWithFont:yourLabel.font
constrainedToSize:maximumLabelSize
lineBreakMode:yourLabel.lineBreakMode];
//adjust the label the the new height.
CGRect newFrame = yourLabel.frame;
newFrame.size.height = expectedLabelSize.height;
yourLabel.frame = newFrame;
问题具有这些修饰是我有许多标签一个接着一个。所以当我更改一个标签的长度时,以下所有标签也需要转换/移动到新位置。
是否有任何方法可以动态更改所有标签的大小和位置,同时确保最终演示文稿与定长标签一样好?
您需要动态管理所有标签的高度。喜欢拿一个int变量'h'给出初始值,就像'yourLabel.frame.size.origin.y'...在那之后h = h + expectedLabelSize.height ...将这个h值赋给下一个标签的y位置 – 2013-04-06 06:32:16