Ich bin ein kompletter Anfänger auf iOS-Dev und ich möchte eine kleine iOS-Anwendung erstellen. In dieser Anwendung sollen 3 UIPickerViews
verschiedene Daten anzeigen.Mehrere UIPickerView in der gleichen UIView
Mein Problem ist auf dem Display. Ich bin es gewohnt, Android oder Windows Phone zu entwickeln und ich verstehe nicht, wie man die UIPickerViews
mit verschiedenen Daten bevölkern kann.
Dies ist der Code, den ich schon geschrieben habe:
//
// ViewController.swift
// iphoneVersion
//
// Created by fselva on 13/05/2015.
// Copyright (c) 2015 fselva. All rights reserved.
//
import UIKit
class ViewController: UIViewController, UIPickerViewDelegate{
@IBOutlet weak var pickerView1: UIPickerView!
@IBOutlet weak var pickerView2: UIPickerView!
@IBOutlet weak var pickerView3: UIPickerView!
var test = ["Todo","Waiting","Maybe","Inbox","Note"]
var test2 = ["@Office","@Computer","@Home","@Meeting", "@Read", "@Achat", "@Call"]
override func viewDidLoad() {
super.viewDidLoad()
pickerView1.tag = 1
pickerView2.tag = 2
pickerView3.tag = 3
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func numberOfComponentsInPickerView(pickerView : UIPickerView!) -> Int{
return 1
}
func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int{
if pickerView2.tag == 2 {
return test.count
} else if pickerView3 == 3{
return test2.count
}
return 1
}
func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! {
if pickerView2 == 2 {
return test[row]
} else if pickerView3 == 3{
return test2[row]
}
return ""
}
}
@IBOutlet weak var pickerView1: UIPickerView!
wurde von Strg + automatisch erstellt aus dem Storyboard Klicken Sie auf die ViewController.swift.
Die erste UIPickerView
soll derzeit nichts anzeigen. Der zweite soll test
anzeigen und der dritte zeigt test2
an.
Nach Stunden der Untersuchung im Internet habe ich über Tags zu definieren, wer muss was anzeigen, aber es funktioniert nicht.
Mache ich etwas falsch, vermisse ich irgendwo etwas?
Vielen Dank für Ihre Antwort, Ich werde überprüfen, welcher Delegierte versteht, was du mir gesagt hast. Außerdem werde ich die Lösung, die du sagst, versuchen, danke. – fselva
Put PickerView1.delegate = Selbst in ViewDidLoad() – ChikabuZ
Ok es funktioniert wie ein Charme, ich verpasste nur die Delegierten ..... Vielen Dank! – fselva