当我将带有图像的内插字符串传递到文本视图中时,它返回不正确。
import SwiftUI
struct UserMediaCell: View {
var body: some View {
subView(label:"\(Image(systemName: "ellipsis"))")
// shows incorrectly:
// Image(provider: SwiftUI.ImageProviderBox<SwiftUI.Image.(unknown context at $18c350410).NamedImageProvider>)
Text("\(Image(systemName: "ellipsis"))")
// shows correctly. (sf symbol visible)
}
}
struct subView: View {
@State var label: String
var body: some View {
Text(label)
}
}
Run Code Online (Sandbox Code Playgroud)
我该如何解决这个问题?
Jak*_*ake 13
这是因为您的子视图将字符串插值的结果作为 String 类型。正常工作的文本视图不是使用字符串来初始化视图,而是使用本地化字符串键。
更改您的子视图以解释这一点,如下所示:
// Structs, Classes, and Actors should start with a Capital Letter BTW
struct SubView: View {
@State var label: LocalizedStringKey
var body: some View {
Text(label)
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1132 次 |
最近记录: |