私はいくつかのフィールドを持っています。私はリターン/次のキーを押して、ユーザーに声を掛けて一方から他方へスキップしてそれぞれにデータを入力したいと思います。私は、私は、ユーザーが次とリターン/次のキーを押すたびにキャプチャしていますUITableViewCellのリターン/次のキーを使用して、次のUITextFieldにフォーカスを設定します。
// Customize the appearance of table view cells.
- (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];
UITextField *FirstField = [[UITextField alloc] initWithFrame:CGRectMake(10, 10, 130, 25)];
FirstField.delegate = self;
FirstField.tag = indexPath.row;
[cell.contentView addSubview:FirstField];
FirstField.returnKeyType = UIReturnKeyNext;
[FirstField release];
}
// Configure the cell...
return cell;
}
を持っている:
// Handle any actions, after the return/next/done button is pressed
- (BOOL)textFieldShouldReturn:(UITextField *)textfield
をしかし、私はどのようなセル/位置/フィールドを知っていても、私がでていますプログラムに次のプログラムに焦点を当てるにはどうすればよいですか?私は情報があれば、becomeFirstResponderを使わなければならないことを知っています。
下部ケース(代わりに 'FirstField'の' firstField')で始まるあなたの変数を持つことをお勧めします。ご覧のように、スタックオーバーフローでさえ、自動構文強調表示はちょっと混乱します。 – nacho4d
値1のタグを追加します。ゼロから作成しません。indexPath.rowをassighすると、最初の行はゼロになります。 FirstField.tag = indexPath.row + 1; –