在iOS中,可以通过自定义UIPickerView选择器来获取选择的label。下面是一个示例代码,演示如何实现自定义UIPickerView选择器,并获取选择的label。

首先,创建一个UIViewController,并在其上添加一个UIPickerView和一个UILabel作为选择器和显示选择结果的标签。

import UIKit

class ViewController: UIViewController, UIPickerViewDelegate, UIPickerViewDataSource {

    let fruits = ["Apple", "Banana", "Orange", "Strawberry", "Watermelon"]
    var selectedFruit: String?

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

    override func viewDidLoad() {
        super.viewDidLoad()
        
        pickerView.delegate = self
        pickerView.dataSource = self
    }

    // MARK: - UIPickerViewDelegate

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

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

    // MARK: - UIPickerViewDataSource

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

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

在上述代码中,我们首先将view controller设为UIPickerViewDelegate和UIPickerViewDataSource的委托。然后,我们在viewDidLoad方法中设置UIPickerView的委托和数据源为自身。接下来,我们实现了UIPickerViewDelegate和UIPickerViewDataSource协议中的方法。

在UIPickerViewDelegate协议中,我们实现了titleForRow方法,用于返回选择器中指定行的标题。在didSelectRow方法中,我们获取了选择的水果,并将其赋值给selectedFruit变量,然后更新了标签的文本。

在UIPickerViewDataSource协议中,我们实现了numberOfComponents方法,返回选择器中的组件数,这里我们只有一个组件。在numberOfRowsInComponent方法中,我们返回选择器中每个组件的行数,这里返回水果数组的元素数量。

以上代码演示了如何自定义UIPickerView选择器,并获取选择的label。您可以根据自己的需求进行修改和扩展

ios 自定义UIPickerView选择器 选择的label

原文地址: https://www.cveoy.top/t/topic/iKh1 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录