获取UITextView中的文本宽度(自定义字体)

时间:2012-11-07 17:38:07

标签: objective-c uitextview

我有自定义字体(ttf文件)的UITextView,它工作得很完美,但是当我尝试使用以下代码获取文本宽度时

UITextView*textInput;



CGFloat width1 =  [textInput.text sizeWithFont:textInput.font].width;


frame.size.width=width1;
textInput.frame = frame;

它不正确:width1小于文本的实际宽度..

1 个答案:

答案 0 :(得分:4)

现在在你的代码中我不知道textInput是什么,但可能是一个没有UITextView使用的真实字体的字符串。 UITextView具有属性attributedText,通过它您可以获得NSAttributedString 在此之后,您可以获得尺寸:

NSMutableAttributedString* attributedString=[myTextView attributedText];
NSSize size=[attributedString size];

然后size.width将是宽​​度。