ios - UIPickerView - 用于计算的值传递

标签 ios xcode swift

我是 swift 的新手。 也许有人可以帮助我。 我用自己的数据填充 pickerView。

我可以在数据后面存入一个值吗?

声明如下: 如果用户在 pickerView 上选择一些孔径,存款值(用户看不到存款值)应该转到标签吗?为了进一步计算? 示例:孔径 Ø 6(存款值为 0,4)标签显示 0,4 ccm

import Foundation

class Balkenbewehrung : UIViewController, UIPickerViewDataSource, UIPickerViewDelegate {

let pickerData = ["Ø 6","Ø 8","Ø 10","Ø 12","Ø 14","Ø 16","Ø 20",
    "Ø 25","Ø 26","Ø 28","Ø 30","Ø 32","Ø 36","Ø 40","Ø 50"]



@IBOutlet weak var myPicker: UIPickerView!
@IBOutlet weak var myLabel: UILabel!



override func viewDidLoad() {
    self.view.addGestureRecognizer(self.revealViewController().panGestureRecognizer())
    myPicker?.delegate = self
    myPicker?.dataSource = self

}

func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int {
return 1
}

func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
    return pickerData.count
}

func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! {
    return pickerData[row]
}

func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
    myLabel.text = pickerData[row]
 }
}

来自德国的感谢

最佳答案

使用预先计算的值构建数据结构并尝试此方法

    class ViewController : UIViewController, UIPickerViewDataSource, UIPickerViewDelegate {

    @IBOutlet weak var myLabel: UILabel!
    @IBOutlet weak var myPicker: UIPickerView!

    var pickerDictionary: Dictionary<String, String> = ["Ø 6" : "0,4 ccm",
                                                        "Ø 8" : "0,6 ccm",
                                                        "Ø 10" : "0,8 ccm",
                                                        "Ø 12" : "0,10 ccm",
                                                        "Ø 14" : "0,12 ccm" ]

    override func viewDidLoad() {
        myPicker?.delegate = self
        myPicker?.dataSource = self
    }

    func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int {
        return 1
    }

    func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
        return pickerDictionary.count
    }

    func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! {
        return pickerDictionary.keys.array[row]
    }

    func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
        myLabel.text = pickerDictionary[pickerDictionary.keys.array[row]]
    }
}

关于ios - UIPickerView - 用于计算的值传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31804336/

相关文章:

ios - Swift3 中的 "Cannot convert value of type"错误

ios - 在 UIPickerView 中选择不同的字体大小?

ios - 两个 View Controller 的委托(delegate)协议(protocol)

iphone - iOS 中的数据加密

ios - 使用 Parse.com 和 swift 在 tableView 中加载异步图像

swift - 如何在我基于 Swift 的项目中集成最新的 SDWebImage API?

ios - 仅下载前 n 个子节点(Firebase、Swift)

ios - Swift 中的参数传递

iphone - 无法将 iOS/iPhone 应用程序构建为 i386 以外的任何应用程序

Swift 编译错误 FileBrowser,swift 2.3