В настоящее время я пытаюсь получить эту работу. Любая помощь приветствуется.UITextField внутри UITableViewCell: getFirstResponder in didSelectRowAtIndexPath
У меня есть обычай UITableViewCell
, который имеет UITextField
внутри. Когда я выбираю ячейку таблицы, я хотел бы сделать первый ответчик UITextField
.
Однако [textField becomeFirstResponder];
возвращает false.
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [self tableView:tableView cellForRowAtIndexPath:indexPath];
UITextField *textField;
for (UIView *view in [cell subviews]) {
if ([view isMemberOfClass:[UITextField class]]) {
textField = ((UITextField *)view);
}
}
[textField becomeFirstResponder];
}
В соответствии с запросом инициализация текстового поля. Это делается в UITableViewCell
подкласса:
- (id) initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
// Init Textfield
_textField = [[UITextField alloc] init];
_textField.backgroundColor = [UIColor clearColor];
_textField.delegate = self;
[self addSubview:_textField];
}
return self;
}
Является ли ваш TextField == ноль; ? Я имею в виду, вы можете получить ссылку на текстовое поле? – iphonic
Да, я получаю ссылку на textField. Метод, ставшийFirstResponder, просто возвращает false, поскольку по какой-то причине он не может продвигать textField в firstResponder. –
Пожалуйста, как нам создать 'UITextField'. Может быть, один из ваших методов делегата textfield возвращает NO? –