在 SwiftUI 中装饰文本片段的最佳方法是啥?

Posted

技术标签:

【中文标题】在 SwiftUI 中装饰文本片段的最佳方法是啥?【英文标题】:What is the best way to decorate fragments of text in SwiftUI?在 SwiftUI 中装饰文本片段的最佳方法是什么? 【发布时间】:2020-02-10 18:47:11 【问题描述】:

我需要在 SwiftUI 中将自定义视图插入到 Text 中。换句话说,就是装饰一些文本片段,比如 Numbers 应用程序中的公式字段。 我还是 swiftUI 和 Xcode 的新手,所以不知道如何开始和谷歌搜索。 ??????????‍♂️

如果您能提供任何帮助指出需要进一步深化的领域,我将不胜感激。我想,是关于 UIKit 的……

更新 我必须使用什么样的 UI 元素来实现图片中的结果:文本字段,其中可能包含其他难以处理的 UI 元素? 我想让一些单词变成按钮,其他的在背景上有图像。

【问题讨论】:

【参考方案1】:

我不会在这里给你一个完整的答案,因为你似乎是那种想自己解决这个问题的开发人员。 (如果我假设有误,请纠正我。)

要点是SwiftUI 的做法可能还不如UIKit 的做法那么简单。

UIKit 中,您可能正在考虑创建一个UITextView 的包装视图或子类,它将管理其子视图、处理触摸和文本输入事件,并更新UITextView

LinkedIn's Hakawai 听起来像是你可以考虑用它来驱动它的东西......

然后您可以通过 UIViewRepresentable 包装器类型将其公开给 SwiftUI

【讨论】:

谢谢,这看起来像我要找的东西。时间对我来说更有价值,我不想在别人已经做过的事情上花费太多,我更了解它在这个过程中是如何运作的。我更喜欢从简单到复杂的路径,在我的训练这个阶段我不想深入了解别人的项目。 @cyber-bot 太棒了!如果您认为我已经充分回答了您的问题,请通过单击答案左侧的空心复选标记来投票和/或接受答案。否则,这将在“未回答”问题的墓地中徘徊。谢谢。 已经投票了,但你的答案不是我期望得到的,因为我仍然和昨天一样。 UITextView 是我要自己学习的下一个。我想获得有关如何获得与 Numbers 应用程序中相同结果的更具体说明。 @cyber-bot 很公平,但我认为您需要进一步澄清您的问题才能获得您正在寻找的答案。即“与 Numbers 应用程序中的结果相同”是什么意思? @cyber-bot 恕我直言,我相信我的回答可以为您提供很多工作:您使用带有动态光标和自定义附件视图的UITextView。 LinkedIn 的图书馆将在这方面大有帮助...

以上是关于在 SwiftUI 中装饰文本片段的最佳方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章

如何在类中装饰方法?

在 Python 中装饰方法签名中没有 self 的类

在类中装饰 @property.setter 装饰器 [重复]

在 MRO 中装饰顶部功能

我想在一个类中装饰一个方法但不编辑class.py——里面有细节

python中装饰器装饰类中的方法