我正在尝试创建一个包含几个UILabel的自定义单元格。 第一个标签可能需要一行或多行,因此我需要根据行数调整标签大小(在将行数设置为0之后,将启用多行)。
我尝试过设置sizeToFit(),但它改变了标签的对齐方式和宽度。
我找到了this answer
但我不知道如何将其转换为C#。
有人能指点我的榜样吗? (我已经尝试过Googling it off-course)
这是链接中的方法:
// UILabel *myLabel;
CGSize labelSize = [myLabel.text sizeWithFont:myLabel.font
constrainedToSize:myLabel.frame.size
lineBreakMode:UILineBreakModeWordWrap];
CGFloat labelHeight = labelSize.height;
int lines = [myLabel.text sizeWithFont:myLabel.font
constrainedToSize:myLabel.frame.size
lineBreakMode:UILineBreakModeWordWrap].height/16;
// '16' is font size
答案 0 :(得分:4)
var size = myLabel.StringSize("Some really long string", myLabel.Font, myLabel.Frame.Size, UILineBreakMode.CharacterWrap);
var lines = size.Height / myLabel.Font.CapHeight;