swiftui:自定义按钮在ListView中不起作用

必须

我用Y和N选项创建了一个自定义按钮。(我无法使用“切换”按钮,因为一开始我不需要选择任何选项。

如果将按钮添加到Vstack中,则可以正常工作。按下的选项突出显示,另一个选项变灰。

但是,当将其添加到列表视图中时,单击任何按钮时,看起来都像是单击了整个单元格,并且总是选择了第二个选项。我该如何解决该问题?

在此处输入图片说明 导入SwiftUI

struct ContentView: View {

    var body: some View {

        VStack{
            MultiSelectionButtonView()

            Form{
                MultiSelectionButtonView()

                MultiSelectionButtonGroup()
            }
        }
    }
}


struct MultiSelectionButtonView: View {

    var body: some View {
        HStack{
            Text("Question")
            Spacer()
            MultiSelectionButtonGroup()

        }
    }
}

struct MultiSelectionButtonGroup: View {
    @State private var selectedOption : Int = 0

    var body: some View {

        HStack (spacing: 0){
            MultiSelectionButton(tag: 1, text: "Y", selectedOption: $selectedOption)
            MultiSelectionButton(tag: 2, text: "N", selectedOption: $selectedOption)
        }

    }
}

struct MultiSelectionButton: View {

    @State var tag : Int
    @State var text : String
    @Binding var selectedOption : Int


    var shapeSize : CGFloat = CGFloat(35)
    var strokeWidth : CGFloat = CGFloat(0.5)
    var cornerRadius : CGFloat = CGFloat(2)

    var colorSelected : Color = Color.green
    var colorNoSelected : Color = Color.gray.opacity(0.5)
    var colorStroke : Color = Color.gray

    var body: some View {


        Button(action: {
            self.selectedOption = self.tag
        }) {
            ZStack{
                Group {
                    RoundedRectangle(cornerRadius: self.cornerRadius, style: .continuous)
                        //Circle()
                        .fill((self.selectedOption == self.tag) ? colorSelected : colorNoSelected )

                    RoundedRectangle(cornerRadius: self.cornerRadius, style: .continuous)
                        //Circle()
                        .stroke(colorStroke, lineWidth: strokeWidth)
                }
                .frame(width: shapeSize, height: shapeSize)

                Text(text)
                    .font(.subheadline)
                    .fontWeight(.light)
                    .foregroundColor(Color.white)
            }
        }
    }
}
克里斯

在这里检查此答案:

SwiftUI-列表行中的多个按钮

并尝试无边框按钮样式

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

android中的自定义listView不起作用

来自分类Dev

自定义UICollectionViewCell类中的按钮不起作用

来自分类Dev

OnItemClickListener不起作用,但OnLongItemClickListener在自定义Listview中起作用

来自分类Dev

Android导航抽屉自定义ListView不起作用

来自分类Dev

UI小猫按钮自定义映射不起作用

来自分类Dev

设置后退按钮自定义外观不起作用

来自分类Dev

自定义按钮对IsMouseOver不起作用

来自分类Dev

Android自定义状态按钮不起作用

来自分类Dev

iOS 按钮在自定义视图中不起作用

来自分类Dev

添加自定义后退按钮对 UINavigationBar 不起作用

来自分类Dev

Vuetify 按钮自定义 css 颜色不起作用

来自分类Dev

Android 自定义通知按钮 onClick 不起作用

来自分类Dev

自定义TextField在SwiftUI代码中的VStack中不起作用

来自分类Dev

OnItemCLickListener在ListView自定义适配器中不起作用

来自分类Dev

具有自定义适配器的Listview在SherlockFragment中不起作用

来自分类Dev

CSS自定义单选按钮在IE 8中不起作用

来自分类Dev

自定义UITableViewCell,单元格中的按钮不起作用

来自分类Dev

链接中包装的自定义HTML按钮不起作用

来自分类Dev

无法添加自定义文本,单选按钮在Rails 4表单中不起作用

来自分类Dev

自定义UITableViewCell,单元格中的按钮不起作用

来自分类Dev

CSS自定义单选按钮在IE 8中不起作用

来自分类Dev

WordPress功能在自定义TinyMCE编辑器按钮中不起作用

来自分类Dev

按钮处理程序在自定义 MessageBox 类中不起作用

来自分类Dev

UICollectionView单元的自定义委托-自定义按钮不起作用

来自分类Dev

$(this)在.each中的自定义函数中不起作用

来自分类Dev

捕获自定义错误在Bluebird中不起作用

来自分类Dev

UICollectionView在自定义键盘扩展中不起作用

来自分类Dev

自定义字体在Heroku中不起作用

来自分类Dev

自定义UitableView在Xcode中不起作用

Related 相关文章

  1. 1

    android中的自定义listView不起作用

  2. 2

    自定义UICollectionViewCell类中的按钮不起作用

  3. 3

    OnItemClickListener不起作用,但OnLongItemClickListener在自定义Listview中起作用

  4. 4

    Android导航抽屉自定义ListView不起作用

  5. 5

    UI小猫按钮自定义映射不起作用

  6. 6

    设置后退按钮自定义外观不起作用

  7. 7

    自定义按钮对IsMouseOver不起作用

  8. 8

    Android自定义状态按钮不起作用

  9. 9

    iOS 按钮在自定义视图中不起作用

  10. 10

    添加自定义后退按钮对 UINavigationBar 不起作用

  11. 11

    Vuetify 按钮自定义 css 颜色不起作用

  12. 12

    Android 自定义通知按钮 onClick 不起作用

  13. 13

    自定义TextField在SwiftUI代码中的VStack中不起作用

  14. 14

    OnItemCLickListener在ListView自定义适配器中不起作用

  15. 15

    具有自定义适配器的Listview在SherlockFragment中不起作用

  16. 16

    CSS自定义单选按钮在IE 8中不起作用

  17. 17

    自定义UITableViewCell,单元格中的按钮不起作用

  18. 18

    链接中包装的自定义HTML按钮不起作用

  19. 19

    无法添加自定义文本,单选按钮在Rails 4表单中不起作用

  20. 20

    自定义UITableViewCell,单元格中的按钮不起作用

  21. 21

    CSS自定义单选按钮在IE 8中不起作用

  22. 22

    WordPress功能在自定义TinyMCE编辑器按钮中不起作用

  23. 23

    按钮处理程序在自定义 MessageBox 类中不起作用

  24. 24

    UICollectionView单元的自定义委托-自定义按钮不起作用

  25. 25

    $(this)在.each中的自定义函数中不起作用

  26. 26

    捕获自定义错误在Bluebird中不起作用

  27. 27

    UICollectionView在自定义键盘扩展中不起作用

  28. 28

    自定义字体在Heroku中不起作用

  29. 29

    自定义UitableView在Xcode中不起作用

热门标签

归档