微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

没有标签的SwiftUI Picker视图

如何解决没有标签的SwiftUI Picker视图

编辑:我尝试在窗体外部使用WheelWickerStyle,但是我想要的是相同的想法,实际选项而不是标签,而是列表。就像在我的表单示例中一样,它非常完美,除了它有一个我必须单击以到达那里的标签

我有一个带有按钮的应用程序,该按钮可将我重定向到这样的另一个视图:

Button(action: {
                        self.isAddDrinkView.toggle()
                    }) {
                        Image(systemName: "plus.circle")
                            .resizable()
                            .aspectRatio(contentMode: .fit)
                            .frame(width: 100,height: 100,alignment: .center)
                            .foregroundColor(.black)
                            .padding(.bottom,50.0)
                    }

现在,另一个视图应该是一个列表,您可以从中选择一个元素,并且只能选择一个元素。

我试图这样做:

struct AddDrinkView: View {
    @Observedobject var context: Context
    var body: some View {
        NavigationView{
            Form{
            Picker(selection: $context.selectedItems,label: Text("Select a drink"),content: {
                ForEach(context.items){
                    Text("\($0)")
                }
            }).pickerStyle(DefaultPickerStyle())
            .navigationBarTitle("Select a Drink")
            }.labelsHidden()
        }
    }
}

但是,我的问题是,这向我显示一个带有选择器和隐藏标签的视图。我根本不需要此标签,我希望选择器选项在进入此视图时立即显示,而无需单击标签

我该如何实现?这适用于ios 13+ 另一个可能的选择是,如果我能以某种方式使第一个按钮成为选择器选项视图的触发器,但我仍然不知道该如何实现。

解决方法

通过Form呈现默认样式的选择器。尝试改用WheelPickerStyle

Picker(selection: $context.selectedItems,label: Text("Select a drink"),content: {
    ForEach(context.items){
        Text("\($0)")
    }
}).pickerStyle(WheelPickerStyle())      // << here !!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。