2012-01-15 2 views
0

В моем приложении я использую textFields в tableView. Но когда пользователь нажимает на текстовое поле во второй ячейке, мне нужно добавить одну ячейку в таблицу (например, mail.app), но как я могу получить номер ячейки, если я нажму на текстовое поле?Получить идентификатор TextField в tableView

Я попытался так

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)newIndexPath{ 
    //some action 
} 

, но эта функция не запускается, когда я нажимаю на TextField внутри клетки

ответ

2

Для текстового поля внутри вашей табличной ячейки, установите контроллер представления (или независимо от того, что вы хотите), чтобы соответствовать протоколу UITextFieldDelegate и установить его как делегат текстового поля.

Затем установите текстовое поле TAG, чтобы равным номеру строки для ячейки таблицы.

Когда пользователь нажимает на текстовое поле, вы получите сообщение делегата, отправленное на ваш метод textFieldShouldBeginEditing:, и вы узнаете номер строки ячейки, потому что вы сохранили его в свойстве тега.

Надеюсь, мой ответ поможет вам!

+0

изменить заявление моего класса как @interface UYLModalViewController: UIViewController и написать - (BOOL) textFieldShouldBeginEditing: (UITextField *) TextField { NSLog (@ "dsad"); } Но в режиме отладки я не пришел к этой функции. Что я пропустил? – nabiullinas

+0

Вам нужно установить делегат текстового поля в свой 'UYLModalViewController'. Как только вы это сделаете, метод делегата должен быть вызван. –

+0

Как я могу это сделать. Я добавляю его динамичность. – nabiullinas

Смежные вопросы