2011-12-19 68 views
0

我想要使用UIPickerView和2個組件,其中第二個組件值將取決於第一個組件值,就像在第一個組件中選擇組1一樣,然後在第二個組件中選擇組1值應該顯示。UIPickerView 2組件值iPhone

從兩個部件中選擇值後,值將被分配到UITextFieldUILabel並且選取器將被隱藏。

(我有一個主視圖,其中我添加了一個子視圖來添加UIPickerView)。

請參閱任何教程或示例。

任何幫助理解

- (NSInteger的)numberOfComponentsInPickerView:(UIPickerView *)pickerView

{

返回2;

}

- (NSInteger的)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger的)組分 {

如果(組分== 0){ 返回 [vGroup計數]; }

else { return [vehiclePickerList count]; }

}

- (的NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger的)行forComponent:(NSInteger的)組分 {

switch (component) 
{ 
    case 0: 
     return [vGroup objectAtIndex:row]; 
     break; 
    case 1: 
     return [vehiclePickerList objectAtIndex:row]; 
     break; 
} 
return nil; 

}

+0

什麼問題/你有什麼嘗試? (標準SO問題) – jv42 2011-12-19 09:01:18

回答

1

請提供一些你寫的代碼。對於與組件相關的問題,請使用- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView。 對於基本的選擇器教程,請訪問這裏:Basic Picker Tutorial

在字典數組中存儲組件1的每一行的相應值(您希望在組件2中顯示的值),並從那裏加載值。

+0

不幸的是代碼已被刪除,但是這是我嘗試創建進程的代碼。 – AppDeveloper 2011-12-19 10:15:28

+0

你做得很好。現在,你面臨的問題是什麼?如果pickerView方法沒有被調用,那麼添加委託。如果數據未到,請添加數據源/檢查日誌中的vGroup和vehiclePickerList對象/內容。對於第二個組件中的新項目列表,每次單擊不同的第一個組件行時,相應地使用 - (void)pickerView:(UIPickerView *)thePickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)組件方法更改vehiclePickerList的內容。 – utsabiem 2011-12-19 13:27:53

+0

謝謝你utsabiem :)但它會有幫助,如果你告訴我關於該網站從哪裏我會得到的代碼 – AppDeveloper 2011-12-19 13:52:25