1

我目前正在开发一个应用程序,我想知道如何Form在 SwiftUI 中插入图像作为背景。

我已经尝试过这个:

.onAppear {
   UITableView.appearance().backgroundView = UIImageView(image: UIImage(named: "Background"))  
}

首先,它似乎可以工作,但是当我按下具有表单的多个 NavigationLink 之一时,应用程序崩溃了。谢谢!

4

1 回答 1

1

您需要清除theUITableViewUITableViewCell外观:

UITableView.appearance().backgroundColor = UIColor.clear
UITableViewCell.appearance().backgroundColor = UIColor.clear

然后,您可以根据需要更改background

struct ContentView: View {
    init() {
        UITableView.appearance().backgroundColor = UIColor.clear
        UITableViewCell.appearance().backgroundColor = UIColor.clear
    }

    var body: some View {
        Form {
            Text("Item!")
                .listRowBackground(Color.clear)
        }
        .background(
            Image("Background")
        )
    }
}

.listRowBackground(如果你想改变背景,你也需要。)

于 2021-01-21T11:14:13.010 回答