Ищете простой пользовательский вид для SwiftUI: подборщик - PullRequest
0 голосов
/ 16 апреля 2020

Кто-нибудь создал пользовательский вид для использования средства выбора? Я хотел бы использовать много сборщиков, не забивая мое определение вида.

1 Ответ

0 голосов
/ 16 апреля 2020

Вот мое простое в использовании пользовательское представление для использования средства выбора SwiftUI: import SwiftUI

struct MyPicker: представление {

@State var title:String = ""
@State var display:Bool = false
@State var chosenItem:Int = 0

var choices:[String] = []
var setPickerValue:(Int)->Void

var body: some View {

    HStack {
        Text("\(title)")
        Button(action: {
            self.display.toggle()
        }) {
            Text("\(choices[chosenItem])")
        }
        if display {
            Picker(selection: $chosenItem, label:Text("")) {
                ForEach(0 ..< choices.count) {
                    Text(self.choices[$0])
                }
            }
            .onTapGesture{
                self.display.toggle()
                self.setPickerValue(self.chosenItem)

            }
        }
    }
}

init(t:String, c:[String], initChoice: Int, funcSetValue:@escaping (Int)->Void) {
    _title = State(initialValue: t)
    choices = c
    _chosenItem = State(initialValue: initChoice)
    setPickerValue = funcSetValue
}    

}

struct MyView: представление {

@State var imageChoice:Int = 0

var imageList:[String] = ["imageOne", "imageTwo", "imageThree"]

  var body: some View {

     MyPicker(t:"Images", c:imageList, initChoice:0, funcSetValue:setImageChoice)
  }

  func setImageChoice(v:Int) -> Void {
      imageChoice = v
  }

}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...