У меня есть длинная строка под названием theString
в моем коде, которую я перехожу к методу drawRect:
для рисования на экране.Может ли размер для - [NSString drawInRect:] быть определен содержимым строки?
-(void)drawRect:(CGRect)rect
{
[super drawRect:rect];
[theString drawInRect:CGRectMake(0, 0, self.bounds.size.width, 200)];
}
Как вы можете видеть, я могу просто установить ширину до размера экрана, но высота должна быть установлена вручную, что является проблемой, когда струна передается имеют разную длину. Как автоматически определить высоту кадра? Также в будущем я могу расширить это, включив в себя атрибутную строку с разными стилями шрифта, поэтому подсчет символов может быть не очень хорошим вариантом.
возможно дубликат [Измерение ширины пикселя строки] (http://stackoverflow.com/questions/1435544/measuring-the-pixel-width-of-a-string) –
Я не думаю, что будет помогите мне, поскольку атрибутная строка будет иметь разные шрифты, стили и т. д. Я прав? – Giovanni
Если вы специально спрашиваете об использовании 'NSAttributedString', то, пожалуйста, отредактируйте свой вопрос, чтобы это отразить. Существует аналогичный метод: http://developer.apple.com/library/ios/documentation/UIKit/Reference/NSAttributedString_UIKit_Additions/Reference/Reference.html#//apple_ref/doc/uid/TP40011688-CH1-SW7 –