iphone - Core Text - 小框文本太多 - 如何添加三个点?

标签 iphone objective-c ios core-text

我正在使用 Core Text 在小框架中呈现一些文本。 Core Text 擅长计算适合一个框架的字符串的长度,但如果它太长并且需要剪掉太多,我想通过添加三个点来表示这一点。是否可以?如何?我用谷歌搜索了一下,没有任何运气。

最佳答案

就在我的脑海中,你不能做这样的事情吗:

CFRange visibleRange = CTFrameGetVisibleStringRange(frame);
int index = (visibleRange.loc + visibleRange.length) - 3; // -3 to make sure the three dots are visible

NSMutableString *newString = [text mutableCopy];
[newString insertString:@"..." atIndex:index]

// Re-create framesetter and frame with new string. Redraw frame.

关于iphone - Core Text - 小框文本太多 - 如何添加三个点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6977446/

相关文章:

iphone - 动态识别设备的IOS版本

iphone - 在后台加载UIImagePickerController

iphone - 对 <TSActivityMapVC : 0x81b1000> 的开始/结束外观转换的调用不平衡

objective-c - 如何从 UITextRange.start 的行首获取偏移量

ios - Swift -Ounchecked 和断言

objective-c - 如何找出在 iPhone 应用程序中加载的第一个 View Controller 是什么?

iphone - Alpha 与 OpenGL ES 2.0 混合?

ios - 手机锁定后位置访问权限警报消失

ios - 使用 ExtAudioFileSeek 和 ExtAudioFileRead 从音频文件中读取编码帧

ios - swift 2.0 :Need to display image(PFFile) on PFQueryTableViewController from Parse?