#ios #swift #swiftui #uihostingcontroller #zstack
#iOS #swift #swiftui #uihostingcontroller #zstack
Вопрос:
Мне нужно иметь возможность просматривать мои представления SwiftUI, а также контроллер UIHosting, представляющий их, чтобы видеть фоновое изображение под ними. Приведенный ниже код по-прежнему показывает белый прямоугольник в моем представлении SwiftUI. Пол Хадсон говорит использовать edgesIgnoringSafeArea, но я не могу использовать это, поскольку мой SwiftUIView встроен в более крупную схему пользовательского интерфейса. Есть ли какой-либо способ сделать этот белый прямоугольник, который я вижу, четким?
var body: some View {
ZStack {
VStack {
//omitted
}
}.background(Color.clear)
}
Ответ №1:
Если вы используете UIHostingController
, вам также необходимо установить для backgroundColor
свойства его view
значение .clear
.
yourHostingController.view.backgroundColor = .clear
Комментарии:
1. Обратите внимание, что вызов push view должен быть выполнен с помощью: view.modalPresentationStyle = .OverFullScreen // для поддержки прозрачности v.window? .RootViewController? .присутствует(вид, анимированный: true)