当行包含按钮时禁用表单行选择

Riv*_*era 0 forms swift swiftui

我有一个Form,我Button在一行中添加了一个,但这使得整行都可以选择,这不是我想要的。我希望在删除行选择时可以点击眼睛按钮。

在此处输入图片说明

上面一行没有按钮所以它是不可选择的,而第二行是因为有这个眼睛按钮。

尝试添加一个.allowsHitTesting(false)和一个空的.onTapGesture {}修饰符,但前者什么也不做,而第二个也禁用了眼睛按钮。

Riv*_*era 7

我发现,无论您使用什么修饰符或如何嵌入按钮(s 等),Button在行中嵌入都可以进行行选择。FormZStack

唯一的解决方案是根本不使用按钮,而是使用常规的Image修饰符. onTapGesture

Image(systemName: self.secure ? "eye" : "eye.fill")
    .foregroundColor(self.secure ? .secondary : Color("appTint"))
    .onTapGesture { self.secure.toggle() }
Run Code Online (Sandbox Code Playgroud)


Tim*_*mmy 5

您应该将 buttonStyle 设置为 PlainButtonStyle()