我有2 UIPickerView現在,我想添加三個later.The代碼如下:如何用標籤創建五個UIPickerView?如何在iPhone中給每個UIPickerView賦予不同的名稱?
-(void)viewDidLoad{
Pos_x = 5;
Pos_y = 70;
for (i= 0; i<2; i++) {
myPickerView = [[UIPickerView alloc] init];
myPickerView.frame = CGRectMake(Pos_x,Pos_y,150,300);
myPickerView.tag = i;
myPickerView.delegate = self;
myPickerView.showsSelectionIndicator = YES;
[self.view addSubview:myPickerView];
if (i==0) {
// Init the data array.
Array_1 = [[NSMutableArray alloc] init];
// Add some data for demo purposes.
[Array_1 addObject:@"One"];
[Array_1 addObject:@"Two"];
[Array_1 addObject:@"Three"];
[Array_1 addObject:@"Four"];
[Array_1 addObject:@"Five"];
}
if (i==1) {
Array_2 = [[NSMutableArray alloc] init];
// Add some data for demo purposes.
[Array_2 addObject:@"One1"];
[Array_2 addObject:@"Two1"];
[Array_2 addObject:@"Three1"];
[Array_2 addObject:@"Four1"];
[Array_2 addObject:@"Five1"];
}
Pos_x = Pos_x + 162;
}
}
我已經成功地創建了兩個UIPickerView與標籤。現在的問題是在UIPickerView中添加數據。
我做這樣的
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component {
//return [Array_1 objectAtIndex: row]; // If give only this line both UIPickerView show same value.
//How to show both
//return [Array_2 objectAtIndex: row];
// I also tried this code
if(pickerView == myPickerView){
if (i==0){
}
return [Array_1 objectAtIndex: row];
}
if (i==1){
}
return [Array_2 objectAtIndex: row];
}
}
現在我的問題是,如何顯示在兩個不同的UIPickerView不同的數據?就像在pickerview.tag == 0它會顯示返回[Array_1 objectAtIndex:row]; 和pickerview.tag == 1它會顯示返回[Array_2 objectAtIndex:row];? 任何想法或建議將受到歡迎。
你不應該去要'如果(pickerView.tag == 0)'而不是'if(i == 0)' – Fonix 2013-02-20 09:05:07
我已經完成了這個工作,但是dint的工作。 – 2013-02-20 09:14:24
我的意思是在titleForRow方法中,它沒有任何意義,因爲'i'甚至沒有定義,所以你要'if(i == 0)'在那裏。除非你省略了一些代碼 – Fonix 2013-02-20 09:18:09