Я пытаюсь создать пользовательскую ячейку, которая состоит из нескольких UILabels. Первый ярлык может содержать одну или несколько строк, поэтому мне нужно изменить размер метки в соответствии с количеством строк (после установки количества строк в 0, поэтому будет задействована многострочная линия).Monotouch - вычислить высоту UILabel
Я попытался установить sizeToFit(), но изменил выравнивание и ширину моей метки.
Я нашел this answer
, но я не знаю, как преобразовать его в C#.
Может ли кто-нибудь указать мне пример? (Я уже попытался погуглить это отклонение от курса)
Это метод по ссылке:
// 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
Спасибо, это действительно помогло! –
Когда я попробовал, я получаю сообщение об ошибке: StringSize не принимает 7 параметров. Проверено в сборке для декларации: . public static CGSize StringSize (этот NSString Это, шрифт UIFont, nfloat minFontSize, ref nfloat actualFontSize, nfloat forWidth, UILineBreakMode lineBreakMode); Но он также упомянул о своем устаревании в ios 7.0 Любые альтернативные решения очень ценятся! Благодарю. – coder284