SwiftUI - SF Symbols Do Not Render

2019-07-07 08:21发布

I'm trying to show a "plus" or "plus.app" sign via the SF Symbols in my code, but the preview to the right shows nothing.

Other symbols do work like "plus.circle", is there a reason why the other symbols aren't working?

Here is my view.

var body: some View {
    NavigationView {
        List(items) { item in
            Text(item.description)
        }
        .navigationBarTitle(Text("Grocery Items"))
        .navigationBarItems(leading:
            PresentationButton(
                Image(systemName: "plus")
                    .imageScale(.large)
                    .padding(),
                destination: ItemDetailView(item: items[0])
            )
        )
    }
}

I expect the output to show the "plus.app" or "plus" symbol, but it shows nothing when I use those symbols.

1条回答
唯我独甜
2楼-- · 2019-07-07 09:04

I had the same problem with the default preview device, as well as iPhone XS simulator.

Changing the preview device to "iPhone XR" solved the issue for me. It's probably a bug and will be fixed in the next releases.

You can change the preview device as below:

#if DEBUG
struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
          .previewDevice(PreviewDevice(rawValue: "iPhone XR"))
    }
}
#endif

Update:

I tried the same with Xcode 11 beta 3 and it seems this issue was fixed.

查看更多
登录 后发表回答