Ios SwiftUI:在列表中水平对齐视图

Ios SwiftUI:在列表中水平对齐视图,ios,swiftui,Ios,Swiftui,我试图让列表中的项目以特定的方式排列 List { HStack { Text("1.") Text("Item 1") } HStack { Text("Item 2") } } 最后看起来是这样的: 1. Item 1 Item 2 在本例中,我希望排列“项目1”和“项目2”: 也就是说,“项目”部分都会对齐,无论它们是否具有列表标记,或者它们是否具有不同长度的列表标记(数字1。与100对齐。) 我试过了,

我试图让列表中的项目以特定的方式排列

List {
    HStack {
        Text("1.")
        Text("Item 1")
    }

    HStack {
        Text("Item 2")
    }
}
最后看起来是这样的:

1. Item 1
Item 2
在本例中,我希望排列“项目1”和“项目2”:

也就是说,“项目”部分都会对齐,无论它们是否具有列表标记,或者它们是否具有不同长度的列表标记(数字1。与100对齐。)

我试过了,但在
列表中这些似乎没有得到尊重
——如果我制作
对齐指南
并将其全部放在
VStack中,效果会很好,但我需要列表行为

(我可以通过去掉
HStacks
并执行
文本(“1.\tItem 1”)
文本(“\tItem 2”)
来假装这一点。制表位将使所有内容对齐,但我需要对列表标记和列表项应用不同的格式(粗体、颜色等),因此它们需要是离散的
文本
元素。)

任何想法都将不胜感激。

**更新**

希望这是更接近你正在寻找的

通过在前导值周围指定一个框架,可以控制其大小,以便根据需要修改文本值


还可以计算值以设置帧和填充,但这些硬编码值应能立即达到效果。

这实际上不是关于对齐,而是关于格式化单元格内容,就像在故事板中一样:为“1”添加标签,为“项目1”添加标签,即使没有“Item2”的编号,标签仍然会在那里,空白。。。这里是相同的,只要正确设置单元格格式,结果就会得到正确的“对齐”。如果我想明确地告诉视图每个初始
文本
帧应该有多宽,这很好。我更希望视图自己能解决这个问题,但我可能会同时解决。将2个HStack包装成1个VStack(对齐:。拖尾)对您有用吗?@EnesKaraosman他们排成一行,但在一行中。他们需要在自己的行中。不过,这会将整个HStack放在一个列表行中。
1.  Item 1
    Item 2
import SwiftUI

struct ContentView: View {
    var body: some View {
        List {
            HStack {
                Text("1.").frame(width: 20.0, height: nil, alignment: .leading)
                Text("Item 1")
            }
            HStack {
                Text("Item 2")
                .padding(EdgeInsets(top: 0, leading: 28, bottom: 0, trailing: 0))
            }
            HStack {
                Text("2.").frame(width: 20.0, height: nil, alignment: .leading)
                Text("Item 3")
            }
            HStack {
                Text("Item 4")
                .padding(EdgeInsets(top: 0, leading: 28, bottom: 0, trailing: 0))
            }
        }
    }
}