代码之家  ›  专栏  ›  技术社区  ›  damd

没有文本内容的快捷键操作

  •  1
  • damd  · 技术社区  · 3 年前

    我有两个紧挨着的按钮。一个用于开始录音,一个用于播放。当我点击播放按钮时,我看到“播放已点击”被记录。当我点击录制按钮时,什么也没发生。当我在记录按钮文本中添加一个字母时,它会被很好地记录下来。

    Button(action: {
        print("record clicked")
    }) {
        Text("")
    }
    .frame(width: 55, height: 55)
    .background(Color.red)
    .cornerRadius(9999)
    
    Button(action: {
        print("play clicked")
    }) {
        Image(systemName: "play")
            .foregroundColor(.white)
            .font(.system(size: 30))
    }
    .frame(width: 55, height: 55)
    .background(Color.green)
    .cornerRadius(9999)
    
    1 回复  |  直到 3 年前
        1
  •  0
  •   Asperi    3 年前

    它们通过标签内容来确定按钮的可点击区域,但对于空文本,它几乎为零,所以只要让它引人注目,比如

    Button(action: {
        print("record clicked")
    }) {
        Text("")
            .padding()     // << this !!
    }
    

    使用Xcode 13/iOS 15进行测试