Skip to content

Commit a030a52

Browse files
Fix to bug
1 parent a3fc604 commit a030a52

File tree

1 file changed

+10
-5
lines changed

1 file changed

+10
-5
lines changed

Sources/FlexibleAttributedText/FlexibleAttributedTextImpl+iOS.swift

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,9 @@
1313
uiView.textContainer.lineBreakMode = NSLineBreakMode(
1414
truncationMode: context.environment.truncationMode
1515
)
16-
1716
uiView.openLink = onOpenLink ?? { context.environment.openURL($0) }
17+
uiView.invalidateIntrinsicContentSize()
18+
uiView.updateFrame()
1819
textSizeViewModel.didUpdateTextView(uiView)
1920
}
2021
}
@@ -33,25 +34,29 @@
3334
override init(frame: CGRect, textContainer: NSTextContainer?) {
3435
super.init(frame: frame, textContainer: textContainer)
3536

36-
let fixedWidth = frame.size.width
37-
let newSize = self.sizeThatFits(CGSize(width: fixedWidth, height: CGFloat.greatestFiniteMagnitude))
38-
self.frame.size = CGSize(width: max(newSize.width, fixedWidth), height: newSize.height)
37+
3938
self.backgroundColor = .clear
4039
self.textContainerInset = .zero
4140
self.isEditable = false
4241
self.isSelectable = false
4342
self.isScrollEnabled = false
4443
self.textContainer.lineFragmentPadding = 0
45-
44+
updateFrame()
4645
self.addGestureRecognizer(
4746
UITapGestureRecognizer(target: self, action: #selector(handleTap(sender:)))
4847
)
4948
}
49+
5050

5151
required init?(coder: NSCoder) {
5252
fatalError("init(coder:) has not been implemented")
5353
}
5454

55+
func updateFrame() {
56+
let fixedWidth = frame.size.width
57+
let newSize = self.sizeThatFits(CGSize(width: fixedWidth, height: CGFloat.greatestFiniteMagnitude))
58+
self.frame.size = CGSize(width: max(newSize.width, fixedWidth), height: newSize.height)
59+
}
5560

5661

5762
override var intrinsicContentSize: CGSize {

0 commit comments

Comments
 (0)