簡體   English   中英

根據另一個UIpickerview的didSelectRow在UIPickerview中返回numberOfRowsInComponent和titleForRow

[英]Return numberOfRowsInComponent & titleForRow in UIPickerview based on another UIpickerview's didSelectRow

祝大家有美好的一天

我嘗試在主題行中解釋我的查詢。 據我所知以及從代碼中所看到的,所有pickerviews都在ViewDidLoad()中初始化,這意味着它們都具有數據集。 作為我的數據驗證的一部分(在這種情況下非常重要),我想根據先前的選擇設置以下pickerview。

卡住的地方是使用“新”數據填充以下pickerview的標題並重新加載視圖。

理想情況下,我希望視圖在進行先前選擇時出現。

如果您知道如何合理地執行此操作,請告訴我,我將感謝您目前能獲得的任何幫助!

我並不確定邏輯上的含義,但是您只是使用if語句和開關來確定選擇了什么,以及根據選擇來顯示什么。 然后,您重新加載數據。

func pickerView(pickerView: UIPickerView,
            didSelectRow row: Int,
             inComponent component: Int)
{
    if component == 0
    {
        switch row{
        case 0:
           self.titlesForComponentOne = ["One","Two","Three","Four"]
        case 1:
           self.titlesForComponentOne = ["One","Two"]
        default:
           self.titlesForComponentOne = ["One","Three","Four"]
         }
     }else if component == 1
     {
         switch row{
         case 0:
            self.titlesForComponentTwo = ["Three", "Four"]
         case 1:
         ….
     self.picker.reloadAllComponents() // or just ones that need to be updated
}

func pickerView( pickerView: UIPickerView,
numberOfRowsInComponent component: Int) -> Int
{
    switch component{
    case 0:
       return self.titlesForComponentZero.count
    case 1:
       return self.titlesForComponentOne.count
    case 2:
       ….  
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM