swift - 在 SwiftUI 中,如何增加按钮的高度?

标签 swift macos user-interface button swiftui

正如您在屏幕截图中看到的,按钮高度没有调整以适应文本大小,使其看起来很丑。我怎样才能增加按钮的高度,这样它看起来就不傻了。我的问题是,如何增加 SwiftUI 中按钮的高度?我正在尝试制作类似 Minecraft 的游戏的标题屏幕。

struct ContentView: View {
var body: some View {
    GeometryReader { geometry in
        VStack (spacing: 8) {
            Text("[Name not disclosed]Craft").font(.system(size: geometry.size.width/8))
            Button(action: {
                
            }) {
                Text("Singleplayer").font(.system(size: geometry.size.width/20))
                    .frame(minWidth: geometry.size.width/2)
            }
            Button(action: {
                
            }) {
                Text("Multiplayer").font(.system(size: geometry.size.width/20))
                    .frame(minWidth: geometry.size.width/2)
            }
            HStack (spacing: 8) {
                Button(action: {
                    
                }) {
                    Text("Options").font(.system(size: geometry.size.width/20))
                        .frame(minWidth: (geometry.size.width/4)-16)
                }
                Button(action: {
                    exit(EXIT_SUCCESS);
                }) {
                    Text("Quit Game").font(.system(size: geometry.size.width/20))
                        .frame(minWidth: (geometry.size.width/4)-16)
                }
            }
        }
    }
}

Not nicely looking window

最佳答案

您只需设置PlainButtonStyle并按照您的意愿绘制它...

例如,这是您的按钮之一:

Button(action: {
    
}) {
    Text("Singleplayer").font(.system(size: geometry.size.width/20))
        .padding()
        .background(RoundedRectangle(cornerRadius: 8).fill(Color.blue))
        .frame(minWidth: geometry.size.width/2)
}
.buttonStyle(PlainButtonStyle())

custom button

关于swift - 在 SwiftUI 中,如何增加按钮的高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59290097/

相关文章:

xcode - 单元格文本本地化中的奇怪行为。 Xcode 7 [快速]

swift - 如何在 OS X 上的文本字段上使用 DidEndEditing (swift)

objective-c - Finder 脚本桥接关闭

user-interface - 黑莓 - 从带有复选框的列表中获取选中的项目

ios - 无法识别的选择器 Swift 2 Purelayout Xcode7

swift - 在工作表内的表单中使用选取器不起作用

ios - 使用 Swift 的 UILabel 中的 NSAttributedString 单击事件

macos - 导出的 UTI 未被 macOS 拾取

c++ - 避免多个 bool 值的优雅方法?

user-interface - 禁用 gwt 中的文本选择