Для приложения macOS мне нравится увеличивать ширину кнопки в родительском представлении с помощью SwiftUI. Я пробовал это: импортировать SwiftUI
struct ContentView: View {
var body: some View {
VStack {
Button(action: {print("TEST")}) {
Image(systemName: "clock")
.frame(width: 25, height: 25, alignment: .center)
Text("This is a button")
.frame(minWidth: 200, idealWidth: 200, maxWidth: .infinity, minHeight: 25, idealHeight: 25, maxHeight: 25, alignment: .leading)
Image(systemName: "chevron.left")
.frame(width: 25, height: 25, alignment: .center)
}
.buttonStyle(PlainButtonStyle())
}
}
}
и это даст результат, который выглядит именно так, как я ищу, но если вы щелкните область, отмеченную красным на следующем снимке экрана приложения
действие кнопок не срабатывает. Также область между первым изображением и текстом не запускает действие. Я также попытался реализовать собственный ButtonStyle, но безуспешно. Как сделать кнопку, занимающую всю ширину родительского представления?