CTFramesetterSuggestFrameSizeWithConstraints
.基本上,它允许您找出适合某个帧的字符数.您可以使用该数字来剪切当前文本并插入按钮. 我为UILabel的子类编写了这个函数的实现:
- (NSInteger)numberOfCharactersThatFitLabel { // Create an 'CTFramesetterRef' from an attributed string CTFontRef FontRef = CTFontCreateWithname((CFStringRef)self.Font.Fontname,self.Font.pointSize,NulL); NSDictionary *attributes = [NSDictionary dictionaryWithObject:(__brIDge ID)FontRef forKey:(ID)kCTFontAttributename]; CFRelease(FontRef); NSAttributedString *attributedString = [[NSAttributedString alloc] initWithString:self.text attributes:attributes]; CTFramesetterRef frameSetterRef = CTFramesetterCreateWithAttributedString((CFAttributedStringRef)attributedString); // Get a suggested character count that would fit the attributed string CFRange characterFitRange; CTFramesetterSuggestFrameSizeWithConstraints(frameSetterRef,CFRangeMake(0,0),NulL,CGSizeMake(self.bounds.size.wIDth,self.numberOflines*self.Font.lineHeight),&characterFitRange); CFRelease(frameSetterRef); return (NSInteger)characterFitRange.length;}
Here’s a bog post用于完全实现将随机文本剪切为指定行数并向其添加“查看更多”文本.
总结以上是内存溢出为你收集整理的ios – 使用给定字符串查找具有恒定宽度和高度的UITextView中的字符数?全部内容,希望文章能够帮你解决ios – 使用给定字符串查找具有恒定宽度和高度的UITextView中的字符数?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)