私はもともと、各セルに独自の画像があり、セルにプレースホルダーテキストを含む uitextfield がドロップされた 5 つの tableviewcells を持つアプリを作成しました。そのセルがタップされると、uipicker が呼び出され、値が uitextfield に返されました。私は cellForRowAtIndexPath メソッドを使用していませんでした。
セルがタップされたときに新しい動作を使用する必要があったため、セルのイメージビューをプログラムでやり直す必要がありました。そのため、各セルにデータを入力するために、スイッチ ケースを使用して cellForRowAtIndexPath を実装する必要がありました。UIImageViews を含むセルを完成させましたが、UITextField を含むセルに困惑しました。
プログラムで作成された uitextfield は表示されません。コードは次のとおりです。
- (UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"MyIdentifier"] autorelease];
switch (indexPath.row) {
case 0:
cell.imageView.image = [UIImage imageNamed:@"Location1.jpg"];
break;
case 1:
break;
case 2:
self.myCity = [[UITextField alloc] initWithFrame:CGRectMake(200,6,100,30)];
self.myCity.text = @"Pick a city...";
//Call UIPicker
break;
case 3:
cell.imageView.image = [UIImage imageNamed:@"driveThru1.jpg"];
break;
case 4:
cell.imageView.image = [UIImage imageNamed:@"24hrs1.jpg"];
break;
case 5:
break;
default:
break;
}
return cell;
}
ストーリーボードは次のとおりです。
結果は次のとおりです。