2010-06-10 41 views
0

我有UIPicker設置與多個組件和它下面的一個按鈕。根據用戶選擇的內容,UIPicker確定將加載哪個新視圖,但我無法確定如何從拾取器本身推斷信息。現在我已經是按下按鈕時被調用此方法:從多個組件中繪製UIPicker值?

- (IBAction) buttonPressed { 
     if (component:1 == 1 && component:2 == 1) { 
       //Load the view number 1. 
     } else if (component:1 == 2 && component:2 == 1) { 
       //Load the view number 2. 
     } else { 
       //Load the view number 3. 
     } 
} 

我明明知道我的代碼是錯誤的,但我希望它得到跨點。我有多個組件,我需要弄清楚如何使用用戶在選擇器上滾動的信息來確定移動到哪個視圖。 (我知道如何加載視圖,我只是在代碼中評論這些以更好地闡明問題區域。)

如何使用pickerViews推斷buttonPressed IBAction方法中的信息?

回答

0

要直接響應選取器操作,請使用委託人的pickerView:didSelectRow:inComponent:

要獲得與用戶選擇對應的視圖,請使用viewForRow:forComponent:。從這個角度來看,你可以獲得它顯示的信息(如果它是一個UILabel,請檢查它的text屬性)。

另外,您可以直接從數據源獲取此信息,請參閱您將在代表的pickerView:titleForRow:forComponent:pickerView:viewForRow:forComponent:reusingView:中返回的信息,以獲取當前選定的行和組件。

+0

我不太明白你在說什麼 - 這些之間的區別是什麼。 – startuprob 2010-06-10 21:46:08

+0

@Rob你最後的編輯有點澄清,沒有它,我認爲當你的選擇器改變選擇而不是你觸摸按鈕時,你需要得到你的信息。現在,我仍然困惑你「推斷信息」的含義。你介意給出一個你想獲得什麼樣的結果的例子嗎?給出選擇器中的一些模擬數據,並告訴我在推斷後你想得到什麼...... – luvieere 2010-06-11 04:35:59