55得票1回答
Swift协议:方法没有覆盖其超类中的任何方法

由于Xcode 6在使用Swift时仍存在许多错误,我不确定这是其中之一还是我漏掉了什么。我的类采用协议NSLayoutManagerDelegate。但是似乎无法覆盖我需要的方法。我按照文档说明操作:override func layoutManager(_ aLayoutManager: ...

38得票9回答
点击UILabel文本的一部分

我有一个问题,即boundingRectForGlyphRange总是返回CGRect.zero,“0.0,0.0,0.0,0.0”。 例如,我正在编写触摸UILabel的文本部分的代码。我的文本有第一部分是任何文本,第二部分是阅读更多。 我希望在仅当我点击阅读更多时才启用触摸识别器。如果我在...

29得票3回答
核心文本中的行间距是如何工作的?(为什么它与NSLayoutManager不同?)

我正在尝试使用Core Text函数绘制文本,并希望行间距与使用NSTextView时尽可能接近。 以这个字体为例:NSFont *font = [NSFont fontWithName:@"Times New Roman" size:96.0]; 如果我在NSTextView中使用这种字体...

17得票1回答
使用TextKit在UITextView中添加动态UIImage

我有一个包含多个图像帧和持续时间的UIImage,它是从一个动画GIF文件中拼接而成的。如果我在UIWebView中加载图像,它会按预期进行动画,但我想使用UITextView。显然的选择是使用TextKit与自定义NSLayoutManger和许多自定义NSAttributedString属...

17得票2回答
使用NSLayoutManager为每个字形计算框架

在这篇帖子Core Text calculate letter frame in iOS中,他们使用Core Text非常精确地计算出每个字形的框架。最终得到的矩形完美地包裹着实际绘制的字形。 但是使用NSLayoutManager的boundingRectForGlyphRange:inT...

15得票2回答
在NSLayoutManager中控制自定义文本属性周围的间距

我有一个自定义的NSLayoutManager子类,用于绘制椭圆形标记。对于具有自定义属性(TokenAttribute)的子字符串,我会绘制这些标记。我可以顺利地绘制这些标记。 然而,我需要在具有TokenAttribute的范围周围添加一点“填充”(以便标记的圆角矩形背景不会与文本相交)...

14得票1回答
使用NSLayoutManager创建动画文本效果?

在2013年苹果全球开发者大会(WWDC)的第220次会议(高级文本布局和Text Kit效果),他们特别提到NSLayoutManager可以与NSTextStorage和NSTextContainer一起使用来创建高级文本动画。但是他们没有提供具体方法。 我想使用NSLayoutMana...

12得票1回答
从UITextView和NSLayoutManager获取行信息

为了支持UIAccessibilityReadingContent协议,我需要我的UITextView回答关于它的行的问题。这些是我需要实现的协议方法: - accessibilityLineNumberForPoint:给定一个坐标,返回行号。 - accessibilityContent...

12得票2回答
用Swift中的NSLayoutManager隐藏Markdown字符

我正在为Mac应用程序开发一个使用Markdown语法的富文本编辑器。我使用 NSTextStorage 监视 Markdown 语法中的匹配项,然后实时地将样式应用于 NSAttributedString,就像这样: 目前,我已经深陷其中,但我很兴奋能够取得进展。:) 这个教程非常有帮...

11得票3回答
如何以编程方式使用显式的NSLayoutManager、NSTextStorage、NSTextContainer设置NSTextView?

按照苹果文档的说明,我正在尝试通过其两个构造方法之一来设置简单的NSTextView。 我将下面的代码放置在内容视图的视图控制器的viewDidAppear方法中。textView是NSTextView的一个实例,frameRect是内容视图的框架。 以下Swift代码有效(为我提供了一...