0

我有带有自定义字体(ttf 文件)的 UITextView,它运行良好,但是当我尝试使用以下代码获取文本的宽度时

UITextView*textInput;



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


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

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

4

1 回答 1

4

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

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

然后 size.width 将是宽度。

于 2012-11-07T17:53:18.947 回答