#xcode #swiftui
#xcode #swiftui
Вопрос:
Я пытаюсь определить вложенное представление, состоящее из трех кнопок, каждая из которых находится внутри закругленного прямоугольника. Первая кнопка имеет фиксированную ширину, остальные две кнопки должны иметь общую ширину. Это то, что я получаю:
Вы можете видеть, что между кнопками есть некоторые отступы, и хотя две кнопки большего размера имеют правильный размер, отступ делает все это слишком широким.
Вот мой код SwiftUI:
struct TopBarView: View {
var body: some View {
GeometryReader { geometry in
HStack {
ZStack {
RoundedRectangle(cornerRadius: 8, style: .continuous )
.stroke()
Button(action: sideMenu) {
Image(systemName: "line.horizontal.3")
}
}.frame(width: 48, height: 48, alignment: .center)
ZStack {
RoundedRectangle(cornerRadius: 8, style: .continuous)
.stroke()
Button(action: sideMenu) {
Text( "First")
}
}.frame(width: (geometry.size.width - 48)/2, height: 48)
ZStack {
RoundedRectangle(cornerRadius: 8, style: .continuous)
.stroke()
Button(action: sideMenu) {
Text( "Second")
}
}.frame(width: (geometry.size.width - 48)/2, height: 48)
}
}
}
func sideMenu() -> Void {
}
}
Итак, мой вопрос — как правильно убрать зазор между кнопками, чтобы все соответствовало?
Ответ №1:
Вы можете передать spacing
параметр HStack
, чтобы удалить интервал следующим образом:
HStack(spacing: 0) {
//some content
}
Комментарии:
1. Спасибо — это приз за самый быстрый ответ!
2. @Kenny хаха, добро пожаловать! Не стесняйтесь принять ответ или проголосовать за него, если он вам помог.