fixed small error in refactor.

This commit is contained in:
Kevin G Christiano 2019-10-17 14:06:01 -04:00
parent 73ac4b932b
commit 6d52663b4f
2 changed files with 4 additions and 6 deletions

View File

@ -510,7 +510,7 @@ public typealias ActionBlock = () -> ()
Provides a text container and layout manager of how the text would appear on screen.
They are used in tandem to derive low-level TextKit results of the label.
*/
public func abstractTextContainer() -> (NSTextContainer, NSLayoutManager)? {
public func abstractTextContainer() -> (NSTextContainer, NSLayoutManager, NSTextStorage)? {
// Must configure the attributed string to translate what would appear on screen to accurately analyze.
guard let attributedText = attributedText else { return nil }
@ -533,7 +533,7 @@ public typealias ActionBlock = () -> ()
textContainer.maximumNumberOfLines = numberOfLines
textContainer.size = bounds.size
return (textContainer, layoutManager)
return (textContainer, layoutManager, textStorage)
}
public static func boundingRect(forCharacterRange range: NSRange, in label: Label) -> CGRect {

View File

@ -126,14 +126,12 @@ import UIKit
/// NOTE: Should only be called when displayed or about to be displayed.
public func alignAccessoryToHero() {
// Layout call required to force draw in memory to get dinmensions of subviews.
layoutIfNeeded()
guard let heroLabel = findHeroLabel(views: contentView.subviews), let hero = heroLabel.hero else { return }
let rect = Label.boundingRect(forCharacterRange: NSRange(location: hero, length: 1), in: heroLabel)
let rectView = UIView(frame: rect)
heroLabel.addSubview(rectView)
accessoryView?.center.y = contentView.convert(rectView.center, from: heroLabel).y
accessoryView?.center.y = contentView.convert(UIView(frame: rect).center, from: heroLabel).y
heroAccessoryCenter = accessoryView?.center
rectView.removeFromSuperview()
}
/// Traverses the view hierarchy for a 🦸heroic Label.