カスタム セルの 2 つのテキスト フィールドにピッカーを使用しています。1 つのフィールドのピッカー値を選択している間、1 つのセクションのすべての行に対して繰り返されます。次のコードを使用しています。そのテキストフィールドのカスタムボタンのアクションにピッカーを設定しています。
int pickerMoved=0;
-(IBAction)genderpickerbtnpressed:(id)sender {
NSLog(@"genderpickerbtnpressed called ");
UIActionSheet *asheet = [[UIActionSheet alloc] initWithTitle:@"Select your gender"
delegate:self
cancelButtonTitle:@"Cancel"
destructiveButtonTitle:nil
otherButtonTitles:@"Select", nil];
[asheet setTag:200];
UIPickerView *statePicker = [[UIPickerView alloc] initWithFrame:CGRectMake(0, 40, 0, 0)];
statePicker.delegate=self;
statePicker.showsSelectionIndicator = YES;
[statePicker setTag:11];
[asheet addSubview:statePicker];
[asheet showInView:[self.view superview]];
[asheet setBounds:CGRectMake(0,0,320, 700)];
[asheet setFrame:CGRectMake(0, 117, 320, 383)];
}
- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex {
if (buttonIndex != [actionSheet cancelButtonIndex]) {
if(actionSheet.tag==200) {
if(buttonIndex==0) {
if(pickerMoved>0) {
NSLog(@"selected item is %d",pickerMoved);
NSLog(@"selected data is %@",[self.genderarray objectAtIndex:pickerMoved] );
self.savingsStr=[self.genderarray objectAtIndex:pickerMoved];
} else {
NSLog(@"distanceArray object at index %@",[self.genderarray objectAtIndex:0]);
self.savingsStr=[self.genderarray objectAtIndex:0];
}
}
}
pickerMoved=0;
[self.tripView reloadData];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
MyTripViewCell *cell = (MyTripViewCell *) [tableView dequeueReusableCellWithIdentifier:@"acell"];
if (cell == nil) {
cell = [[[NSBundle mainBundle] loadNibNamed:@"MyTripViewCell" owner:self options:nil] objectAtIndex:0];
cell=Tblcell;
}
if(indexPath.section == 0) {
Passenger *temp = [appDelegate.ADULTS objectAtIndex:indexPath.row];
NSLog(@"adults array count is %d",[appDelegate.ADULTS count]);
cell.textfield.text = temp.name;
cell.gendertextfield.text = self.savingsStr;
cell.dobtextfield.text =self.datepickerstr;
cell.gendertextfield.tag=indexPath.row;
[savingsStr release];
NSLog(@"temp.gender is ----- %@",temp.gender);
}
cell.selectionStyle=UITableViewCellSelectionStyleNone;
return cell;
}
成人向けセクションの性別テキストフィールドの値が繰り返されます。ピッカー値をセルにコピーする方法。どんなアイデアでも私と共有してください.Thanks.