私のサンプル プロジェクトには登録フォームがあります。登録フォームをテーブル ビューでデザインしました。8 つのテキスト フィールドで構成され、入力したデータが登録されます。ただし、ビューをスクロールすると、登録フォーム ビューのテキスト フィールドのデータが消えます。
質問する
170 次
2 に答える
2
あなたはtableView:cellForRowAtIndexPath:
間違った扱いをしています。新しいセルを要求するたびに (新しいテキスト フィールドを使用して) 新しいセルを作成しているように聞こえます。各行またはセル全体のテキスト フィールドを格納し、特定の行が要求されるたびに同じフィールドを返す必要があります。
于 2012-09-28T01:32:24.597 に答える
0
//first allocate the view only cell is empty,and assign values after if (cell == nil){} loop using tag
- (UITableViewCell *)tableView:(UITableView *)tableview cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier =@"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
lable.frame=your frame;
[cell.contentView addSubview :lable];
titleLbl.frame=your frame;
[cell.contentView addSubview :titleLbl];
}
UILabel *titleLbl = (UILabel *)[cell viewWithTag:101];
UITextField *txtfield = (UITextField *)[cell viewWithTag:102];
titleLbl.text = @"";
}
于 2012-09-28T04:17:05.517 に答える