Swift 如何在一个页面上区分多个UIPickerView 我在一个uiviewcontroller中有2个uipickerviews:

Swift 如何在一个页面上区分多个UIPickerView 我在一个uiviewcontroller中有2个uipickerviews:,swift,uipickerview,Swift,Uipickerview,下拉菜单_1.frame=CGRectMake(…); 下拉菜单_2.frame=CGRectMake(…) 对于这两个下拉列表,我有两个不同的值数组 我有如下功能: func numberOfComponentsInPickerView(pickerView:UIPickerView)->Int{ 返回1 } func pickerView(pickerView:UIPickerView,numberOfRowsInComponent:Int)->Int{ return arrays

下拉菜单_1.frame=CGRectMake(…); 下拉菜单_2.frame=CGRectMake(…)

  • 对于这两个下拉列表,我有两个不同的值数组
  • 我有如下功能:

func numberOfComponentsInPickerView(pickerView:UIPickerView)->Int{
返回1
}
func pickerView(pickerView:UIPickerView,numberOfRowsInComponent:Int)->Int{

return arraysize5.count;以下是您可以执行此操作的方法:

import UIKit

class ViewController: UIViewController, UIPickerViewDataSource, UIPickerViewDelegate {

    @IBOutlet weak var dropdown_1: UIPickerView!
    @IBOutlet weak var dropdown_2: UIPickerView!

    var arraySizes5 = ["sverysmall", "ssmall", "snormal", "slarge", "sverylarge"]
    var arraySizes3 = ["ssmall", "snormal", "slarge"]

    override func viewDidLoad() {
        super.viewDidLoad()
        // 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 pickerView == dropdown_1 {
            return arraySizes5.count
        } else if pickerView == dropdown_2 {
            return arraySizes3.count
        }
        return 0
    }

    func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! {

        if pickerView == dropdown_1 {
            return arraySizes5[row]
        } else if pickerView == dropdown_2 {
            return arraySizes3[row]
        }
        return ""
    }
}

以下是您可以做到这一点的方法:

import UIKit

class ViewController: UIViewController, UIPickerViewDataSource, UIPickerViewDelegate {

    @IBOutlet weak var dropdown_1: UIPickerView!
    @IBOutlet weak var dropdown_2: UIPickerView!

    var arraySizes5 = ["sverysmall", "ssmall", "snormal", "slarge", "sverylarge"]
    var arraySizes3 = ["ssmall", "snormal", "slarge"]

    override func viewDidLoad() {
        super.viewDidLoad()
        // 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 pickerView == dropdown_1 {
            return arraySizes5.count
        } else if pickerView == dropdown_2 {
            return arraySizes3.count
        }
        return 0
    }

    func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! {

        if pickerView == dropdown_1 {
            return arraySizes5[row]
        } else if pickerView == dropdown_2 {
            return arraySizes3[row]
        }
        return ""
    }
}

以下是您可以做到这一点的方法:

import UIKit

class ViewController: UIViewController, UIPickerViewDataSource, UIPickerViewDelegate {

    @IBOutlet weak var dropdown_1: UIPickerView!
    @IBOutlet weak var dropdown_2: UIPickerView!

    var arraySizes5 = ["sverysmall", "ssmall", "snormal", "slarge", "sverylarge"]
    var arraySizes3 = ["ssmall", "snormal", "slarge"]

    override func viewDidLoad() {
        super.viewDidLoad()
        // 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 pickerView == dropdown_1 {
            return arraySizes5.count
        } else if pickerView == dropdown_2 {
            return arraySizes3.count
        }
        return 0
    }

    func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! {

        if pickerView == dropdown_1 {
            return arraySizes5[row]
        } else if pickerView == dropdown_2 {
            return arraySizes3[row]
        }
        return ""
    }
}

以下是您可以做到这一点的方法:

import UIKit

class ViewController: UIViewController, UIPickerViewDataSource, UIPickerViewDelegate {

    @IBOutlet weak var dropdown_1: UIPickerView!
    @IBOutlet weak var dropdown_2: UIPickerView!

    var arraySizes5 = ["sverysmall", "ssmall", "snormal", "slarge", "sverylarge"]
    var arraySizes3 = ["ssmall", "snormal", "slarge"]

    override func viewDidLoad() {
        super.viewDidLoad()
        // 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 pickerView == dropdown_1 {
            return arraySizes5.count
        } else if pickerView == dropdown_2 {
            return arraySizes3.count
        }
        return 0
    }

    func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! {

        if pickerView == dropdown_1 {
            return arraySizes5[row]
        } else if pickerView == dropdown_2 {
            return arraySizes3[row]
        }
        return ""
    }
}

您将pickerview作为参数,因此此函数将使用不同的UIPickerView调用两次。如何比较它们,如if(pickerview==dropdown_1){return arraySizes5.count}或者if(pickerview==dropdown_2){return arraySizes3.count}您将pickerview作为参数,因此此函数将使用不同的UIPickerView调用两次。如何比较它们,如if(pickerview==dropdown_1){return arraySizes5.count}或者if(pickerview==dropdown_2){return arraySizes3.count}您将pickerview作为参数,因此此函数将使用不同的UIPickerView调用两次。如何比较它们,如if(pickerview==dropdown_1){return arraySizes5.count}或者if(pickerview==dropdown_2){return arraySizes3.count}您将pickerview作为参数,因此此函数将使用不同的UIPickerView调用两次。如何比较它们,如if(pickerview==dropdown_1){return arraySizes5.count}或者if(pickerview==dropdown_2){return arraySizes3.count}