2012-02-08 20 views
2

我正在使用雙(雙組件)拾取器視圖。當我運行它時,顯示了雙重選擇器視圖,但組件行中的信息相同。雙(雙組分)拾取器視圖的問題

這裏的代碼希望你能幫助我。
我想在第一個組件中顯示array1,在第二個組件中顯示array2。

- (void)viewDidLoad { 
    NSArray *FirstArray1 = [[NSArray alloc] initWithObjects: 
     @"White",@"Whole Wheat",@"Rye",@"Sourdough",@"Seven Grain", nil]; 
    self.Array1 = FirstArray1; 

    NSArray *FirstArray2 = [[NSArray alloc] initWithObjects: 
     @"Turkey",@"Peanut Butter",@"Tuna Salad",@"Chicken Salad",@"Roast Beef", 
     @"Vegemite",nil]; 
    self.Array2 = FirstArray2; 

    [super viewDidLoad]; 
} 

-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView 
{ 
    return 2; 
} 

-(NSInteger)pickerView:(UIPickerView *)pickerView 
    numberOfRowsInComponent:(NSInteger)component 
{ 
    return[self.Array1 count]; 
    return[self.Array2 count]; 
} 

-(NSString *)pickerView:(UIPickerView *)pickerView 
    titleForRow:(NSInteger)row 
    forComponent:(NSInteger)component 
{ 
    return [self.Array1 objectAtIndex:row]; 
    return [self.Array2 objectAtIndex:row]; 
} 

回答

2
-(NSInteger)pickerView:(UIPickerView *)pickerView 
    numberOfRowsInComponent:(NSInteger)component 
{ 
if (component == 0) { 
    return[self.Array1 count]; 
} else if (component == 1) { 
    return[self.Array2 count]; 
} 
return 0; 
} 
1

這是我怎麼樣來管理的事情...

let pickerData = [["column1_1","column1_2","column1_3","column1_4"], 
        ["column2_1","column2_2","column2_3","column2_4"]] 

func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int { 
    return pickerData[component].count 
} 

組件編號引用數組,簡單好用。