Hallo, ich habe versucht, dies funktioniert seit Ewigkeiten ohne Erfolg so Entschuldigung, wenn dies für Sie einfach scheint.Verwenden von UIPickerView mit mehreren Komponenten in swift
Ich möchte ein 3-Rad-UIPickerView verwenden - Der 1. Rad didSelectRow-Wert wird verwendet, um das Array für die verbleibenden zwei Räder zu ändern, aber sie werden die gleiche sein, wie es eine Conversion-App ist.
Es scheint mir einen Fehler zu verursachen, wenn die Räder bevölkert werden und gesagt wird, dass AnyObject nicht mit String identisch ist. Ich kann nichts falsches sehen, aber ich weiß, dass es etwas ist, das ich vermisst habe.
Alle Zeiger würde sehr geschätzt werden.
Motty.
// ViewController.swift
// picker test
import UIKit
class ViewController: UIViewController, UIPickerViewDelegate {
@IBOutlet weak var picker1Label: UILabel!
@IBOutlet weak var picker2Label: UILabel!
@IBOutlet weak var bigPicker: UIPickerView!
var wheelContents = []
var length = ["metres","feet","yards","inches","mm","cm","miles"]
var volume = ["m3","US Gall","Imp Gall","Barrels", "cubic FT","litres"]
var conType = ["length","volume"]
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
wheelContents = [conType,length,length]
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
//For main selection of type of conversion
// returns the number of 'columns' to display.
func numberOfComponentsInPickerView(bigPicker: UIPickerView) -> Int{
return wheelContents.count
}
// returns the # of rows in each component..
func pickerView(bigPicker: UIPickerView, numberOfRowsInComponent component: Int) -> Int{
return wheelContents[component].count
}
func pickerView(bigPicker: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String!{
return wheelContents[component][row]
}
}
Vielen Dank –