【发布时间】:2021-06-03 03:16:40
【问题描述】:
我刚刚遇到了问题,我想使用左上角将文本定位在我的视图中。这是因为我使用 SVG 文件作为输入,其中的位置是以这种方式给出的。在 SwiftUI 中,.position(x: 10.0, y: 10.0) 确实定位了视图的中心。所以结果是我的文本有一个偏移量,我一般无法删除,因为在我得到它之前我不知道文本的长度。编写代码,可以使用文本长度、字体和大小(也许更多)来计算偏移量,这真的不是我愿意研究的解决方案。
所以这是不可能的,因为文本以 (0,0) 为中心并且一半在视图之外:
Text("I am a dummy")
.position(x: 0.0, y: 0.0)
当我希望文本位于 0 和 0 以外的其他随机位置时,使用基本分隔符的解决方案不起作用。
Text("I am a dummy")
Spacer()
我还没有在这里找到另一个帖子,其中给出了该特定问题的解决方案。
【问题讨论】:
-
对我来说
.position(x: 0.0, y: 0.0)工作...你能显示你想要的结果的图像吗? -
添加了它对 (0,0) 的作用的图像。文本一半在视图之外,但我希望它的左上角从 (0,0) 开始。到目前为止,它只适用于答案中的选项。
-
好吧,如果我希望它适用于所有 x 和 y,也就是说,如果我希望 (0,0) 作为左上角,我也可以只使用普通垫片。问题是:我的答案适用于我设置的所有位置,但这肯定不是一个漂亮的解决方案。