Как удалить интервал между основным представлением содержимого и панелью вкладок в SwiftUI? - PullRequest
1 голос
/ 09 февраля 2020

В настоящее время у меня возникают проблемы при разработке способа устранения разрыва между представлением содержимого (VStack) и представлением панели вкладок. Есть граница, созданная либо VStack, либо панелью вкладок, которую я хотел бы удалить, либо интервал, доведенный до 0, чтобы создать более плавный вид

В настоящее время это выглядит так: https://i.stack.imgur.com/xbGiS.png

Мой код:

            ScrollView(.horizontal, showsIndicators: false) {
                HStack(spacing: 10) {
                    Button(action: {
                        print("Tapped!")
                    }) {
                        HStack(spacing: 10) {
                            Image(systemName: "clock.fill")
                                .foregroundColor(.white)
                            Text("Bus Times")
                        }
                        .padding(7.5)
                        .foregroundColor(.white)
                        .background(Color.init(red: 235/255, green: 100/255, blue: 30/255))
                        .cornerRadius(40)
                    }

                    Button(action: {
                        print("Tapped!")
                    }) {
                        HStack {
                            Image(systemName: "waveform.path.ecg")
                            Text("Services")
                        }
                        .padding(7.5)
                        .foregroundColor(.white)
                        .background(Color.init(red: 235/255, green: 100/255, blue: 30/255))
                        .cornerRadius(40)
                    }

                    Button(action: {
                        print("Tapped!")
                    }) {
                        HStack {
                            Image(systemName: "location.north.fill")
                            Text("Find me")
                        }
                        .padding(7.5)
                        .foregroundColor(.white)
                        .background(Color.init(red: 235/255, green: 100/255, blue: 30/255))
                        .cornerRadius(40)
                    }

                    Button(action: {
                        print("Tapped!")
                    }) {
                        HStack {
                            Image(systemName: "magnifyingglass")
                            Text("Search")
                        }
                        .padding(7.5)
                        .foregroundColor(.white)
                        .background(Color.init(red: 235/255, green: 100/255, blue: 30/255))
                        .cornerRadius(40)
                    }

                }
            }
            Text("Latest news & events").font(.headline).bold()
            PostRow(categoryName: "news", posts: postData)
        }
        .padding()
        .navigationBarTitle("Royal Holloway")
        .font(.subheadline)
    }

1 Ответ

1 голос
/ 09 февраля 2020

Граница вводится с помощью отступа

    }
    .padding() // << this one
    .navigationBarTitle("Royal Holloway")
    .font(.subheadline)
}

В каждом месте, где вы используете .padding(value), значение применяется для всех ребер.

Если вам нужно удалить его внизу, вы можете указать, например,

.padding ([. Горизонтальный, .top])

или другие явные параметры, которые можно установить за каждое ребро или уберите его вообще.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...