Tag: textkit nslayoutmanager

使用TextKit在UITextView中animationUIImage

我有一个UIImage包含多个图像帧和持续时间从一个animation的GIF文件一起切片。 如果我在UIWebView加载图像,它将按预期animation,但是我想用UITextView代替。 显然的select是使用TextKit自定义NSLayoutManger和许多自定义NSAttributedString属性来实现各种绘图效果。 我有一个单一的UITextView ,我想给NSAttributedString包含NSTextAttachment所有的图像,我需要内联显示。 它工作得很好,除了当我加载这些animationUIImages ,他们不通过他们的框架animation。 任何想法如何做到这一点? 我提出了一个理论上的select: 为每个animation图像添加一个自定义的属性 当布局pipe理器去绘制背景时,迭代这个属性来定位附件的位置。 callback文本视图以创build带有animation图像的UIImageView ,添加为子视图,并调用startAnimating 我还没有尝试这个,但它是相当hacky。 我想知道是否有更好的select。 总结:我想通过NSTextAttachment在UITextView内animationUIImage而不需要额外的UIImageView对象。 你可以忽略这个事实,这是以前用UIWebView完成的。 UIImage具有用于设置animation帧的属性( images , duration ),我现在已经configuration好了。 如果我把它分配给一个UIImageViewanimation,如果我把它设置为NSTextAttachment ,没有animation。 我将不胜感激任何反馈。 谢谢!

从UITextView和NSLayoutManager获取行信息

为了支持UIAccessibilityReadingContent协议,我需要我的UITextView来回答关于它的行的问题。 这些是我需要实现的协议的方法: accessibilityLineNumberForPoint: < – 提供了一个坐标,返回一个行号 accessibilityContentForLineNumber: < – 返回给定行的文本 accessibilityFrameForLineNumber: < – 给定一个行号,返回其框架 accessibilityPageContent < – 整个文字内容。 我有。 🙂 我认为,NSLayoutManager可以帮助我,但我不是那种经验。 我想到了一些(我认为),但仍然需要一些帮助。 苹果有一些示例代码( 这里 )可以让我在文本视图中的行数: NSLayoutManager *layoutManager = [textView layoutManager]; unsigned numberOfLines, index, numberOfGlyphs = [layoutManager numberOfGlyphs]; NSRange lineRange; for (numberOfLines = 0, index = 0; index < numberOfGlyphs; numberOfLines++){ (void) [layoutManager lineFragmentRectForGlyphAtIndex:index effectiveRange:&lineRange]; index […]