SwiftUI - Как мне изменить цвет фона представления? - PullRequest
17 голосов
/ 04 июня 2019

Я начинаю пробовать SwiftUI и удивляюсь, что изменить цвет фона View не так просто.Как вы делаете это, используя SwiftUI?

Ответы [ 3 ]

20 голосов
/ 04 июня 2019

Вы можете сделать что-то вроде:

.background(Color.black)

вокруг вашего обзора.

например.из шаблона по умолчанию (я включаю его в группу):

    var body: some View {
        Group {
          Text("Hello SwiftUI!")
        }
       .background(Color.black)
    }

Чтобы добавить к нему некоторую непрозрачность, вы также можете добавить метод .opacity:

.background(Color.black.opacity(0.5))

Вы также можете использовать элемент проверки представления, нажав CMD +, щелкнув по представлению и щелкнув по Проверке> Фон> Цвет

Inspect View

Inspect Detail View

Если честно, SwiftUI был только что выпущен, так что я думаю, что функции автозаполнения еще не все там.

7 голосов
/ 12 июня 2019

Цвет фона экрана

(Начиная с бета-версии XCode версии 11.0 (11M336w))

Я не уверен, имел ли исходный плакат цвет фонавесь экран или отдельных просмотров.Поэтому я просто добавлю этот ответ, который является одним из способов установить цвет фона всего экрана:

var body: some View {
    ZStack
        {
            Color.purple
                .edgesIgnoringSafeArea(.all)

            // Your other content here
    }
}

Я добавил .edgesIgnoringSafeArea(.all), потому что в противном случае он остановится на полях безопасной области.

3 голосов
/ 24 июня 2019

как это

struct ContentView : View {
    @State var fullName: String = "yushuyi"
    var body: some View {        
        VStack
            {
                TextField($fullName).background(SwiftUI.Color.red)
                Spacer()
        }.background(SwiftUI.Color.yellow.edgesIgnoringSafeArea(.all))
    }
}
...