pickerView 4 Walzen

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • pickerView 4 Walzen

    import UIKit

    class ViewController: UIViewController, UIPickerViewDataSource, UIPickerViewDelegate {

    // MARK: - outlets
    @IBOutlet weak var picker: UIPickerView!
    @IBOutlet weak var walzLabel1: UILabel!
    @IBOutlet weak var walzLabel2: UILabel!
    @IBOutlet weak var walzLabel3: UILabel!
    @IBOutlet weak var walzLabel4: UILabel!
    var pickerData: [[String]] = [[String]]()
    override func viewDidLoad() {
    super.viewDidLoad()
    // Daten verknüpfen mit dem PickerView
    self.picker.delegate = self
    self.picker.dataSource = self
    // Daten in das Array füllen
    // pickerData = [["ITem 1", "ITem 2", "ITem 3", "ITem 4", "ITem 5", "ITem 6"]]
    pickerData = [["1","2","3","4"], ["a","b","c","d"], ["!","#","$","€"], ["W", "X","Y","Z"]]
    }
    func numberOfComponents(in pickerView: UIPickerView) -> Int {
    return 4
    }
    // MARK: - alle 4 walzen mit Return x daten befüllen cout = die zählvariable
    func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
    return pickerData.count// fotos ipad zu problem an der stelle 6.2.2020 ~22:45 pickerData[component].count
    }
    // MARK: - die daten die für zeile und komponente(spalte) die zurückgegeben sollen werden hier übergeben (-> für den -> ersetzt)
    func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
    return pickerData[component][row]
    }
    // MARK: - erfasse die auswahl der auswahlansicht / diese methode wird immdr dann ausgelöst, wenn der benutzer eine änderung an der auswahl vornimmt, wenn der parameter row und component angibt, was ausgewählt wurde
    private func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
    // let hour = pickerView[pickerView.selectedRow(inComponent: 0)]
    // let min = pickerView[pickerView.selectedRow(inComponent: 1)]
    walzLabel1.text = String(pickerView.selectedRow(inComponent: 1))
    walzLabel2.text = "test2"
    walzLabel3.text = "test3"
    walzLabel4.text = "test4"
    //errorcodeLabel.text = fehlerArray[row].errorCode
    // timerPickerViewLbl.text = "\(hour):\(min) hrs"
    }
    }
    Dateien
  • Wenn Du Dir die Mühe machst, Deinen Code in einem entsprechenden Tag zu formatieren, findet sich vielleicht jemand, der näher hineinschaut.

    Welche Tests / Debugging-Schritte hast Du denn schon unternommen? Werden alle Methoden wie erwartet angesprungen und sind die Variablen gefüllt?

    Mattes
    Diese Seite bleibt aus technischen Gründen unbedruckt.
  • Hy myMattes,
    Hallo MCDan,

    ich weiß leider nicht so gut Bescheid über Foren und auch über Swift. Wenn du mir sagst was du mit Tag meinst, ausser den Zeitraum wo die Sonne aufgeht bis das sie wieder untergeht?
    das reloadData hat mir nix gesagt habe auch die Syntax nicht gefunden und die Position wo es hinkommt.
    Deshalb habe ich DataSource und Delegate über den gelben Punkt verknüpft. war aber auch nicht die Lösung leider.

    Aber ich glaube hier bin ich falsch, gibt es keine Foren für Anfänger? Anfänger, die alte Bücher haben, die mit dem neuem System nicht mehr in Syntax stehen.. :(
    Ausserdem habe ich auch Labels genommen anstatt Textfields..

    Dankeschön für euer reinschauen!

    Gruss Thomas
  • Hallo Thomas,

    ich weiß nicht, warum da jetzt keine Antwort kam, aber das mit den Tags kann ich auch erklären.
    Wenn du einen neuen Eintrag bearbeitest, sieht es etwa so aus:Editmode.png
    Ganz rechts ist ein Button mit "</>" drauf. Wenn man den klickt, erscheint ein Dialog, in dem man Code eingeben und
    das Syntaxhighlighting wåhlen kann:Forum Codeeingabe.png
    Der eingefügte Code sieht dann so aus:

    C-Quellcode

    1. func test()->Bool {
    2. return false
    3. }
    Leider scheint es kein Highlighting für Swift zu geben. Aber wenigstens erfolgt die gewünschte Einrückung.

    Grüße
    Marco