【发布时间】:2020-11-02 21:46:51
【问题描述】:
我一直在尝试使用 SwiftUI 为我的应用程序制作一些 UI,我需要将一个字符串分隔成字符并让每个字符都有自己的组件,到目前为止我有这个:
HStack{
ForEach(Array("val")) { char in
//Stuff here
}
}
我有一个 Character 的扩展,它给它一个 id,所以它在这种情况下可以工作,但问题是如果我传入“val”,所有组件都有文本“v”而不是“v”“a”“ l" 在单独的组件中,如果我传入一个字符数组,也会发生这种情况,像 ["a", "b"] 会变成 "a" 和 "a"。如果这是一个不好的问题,我很抱歉我对 SwiftUI 和 Swift 很陌生。
【问题讨论】:
-
不要使
Character的扩展符合Identifiable。相反,请使用ForEach(Array("val"), id: \.self)。 -
确实做到了!
-
@George_E,为什么不让
Character符合Identifiable? -
@NewDev 我编辑了我的答案并添加了推理。