ios - Swift:UIpickerView 在 UIlabel 上返回数字

标签 ios swift uilabel uipickerview

我的 UIpickerView 中有 3 个组件,我想返回 UIpickerView 上显示的所有 3 个数字,但它只返回最后一个被选中的数字。换句话说,UIlabel 只显示一位数字。这是我目前所拥有的

class ViewController: UIViewController, UIPickerViewDataSource, UIPickerViewDelegate {

@IBOutlet weak var label: UILabel!
@IBOutlet weak var pickerView: UIPickerView!

let numbers = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "0"]

func numberOfComponents(in pickerView: UIPickerView) -> Int {
    return 3
}

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

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

func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
    label.text = numbers[row]
}

最佳答案

请检查:

func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {

    let val1 = numbers[pickerView.selectedRow(inComponent: 0)]
    let val2 = numbers[pickerView.selectedRow(inComponent: 1)]
    let val3 = numbers[pickerView.selectedRow(inComponent: 2)]

    label.text = "\(val1) \(val2) \(val3)"
}

关于ios - Swift:UIpickerView 在 UIlabel 上返回数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46126096/

相关文章:

objective-c - 将 tabelview indexPath.row 作为字符串传递给 VC WebView

ios - 无法运行 iOS 代码

iphone - 将核心指标添加到 iphone ipad 应用程序

iOS 6 - 在后台重新启动被杀死的应用程序

ios - 如何在 mac OS 中使用 calabash-ios 测试 ipa 文件?

swift - “ fatal error :在展开可选值时意外发现nil”是什么意思?

iphone - 使用 JSON 问题在 UITableView 中导航缓慢

swift - 在项目之间共享 Xcode Assets 目录

ios - 在 iOS 7 中使用 TextKit 设置 UIlabel 行高的最简单方法是什么?

ios - 如何让 UILabel 每秒更改 NSArray 中每个项目的文本,然后再次旋转?