2015-07-30 2 views
0

У меня есть контроллер с таблицей. В этой таблице загружаются пользовательские ячейки.Как я могу получить текст текстового поля в свой контроллер?

В каждой моей пользовательской ячейке есть текстовое поле. В таблице 3 ячейки. Каждая ячейка сохраняет разные значения: имя, день рождения, адрес.

Я хочу, чтобы получить все значения из 3 текстовых полей в контроллер моего представления через IBAction. Как я могу сохранить его правильно и эффективно?

+1

введите номер тега текстовых полей и получите текст –

+3

добавить код, связанный с проблемой –

ответ

-1

Из любой точки в пределах вашего контроллера вида:

UITableViewCell *c1 = [_tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]]; 
    NSString *name = [(UITextField *)[c1 viewWithTag:kTextFieldTag] text]; 
1

Если ваша таблица всегда одинакова, то почему бы не просто создать таблицу со статическими клетками, а также создавать точки для каждого поля? Это, для меня, кажется более чистым, чем использование тегов или поиск детей из ячеек таблицы, найденных по их индексам.

Вы заметили, что у вас есть UIViewController с UITableView внутри него, если я правильно понял. Если вам нужны статические ячейки во вложенной таблице, вам нужно будет встроить UITableViewController в контейнер внутри родительского контроллера представления.

+0

Это будет только самое чистое решение, если родительский контроллер представлений был контроллером табличного представления, что избавило бы от необходимости встраивания. Встраивание контроллеров представлений в другие контроллеры представлений редко считается чистым решением. –

+0

Я считаю, что эта статья выявляет другую, но актуальную точку зрения на эту тему. Возможно, вам понравится свет: http://www.objc.io/issues/1-view-controllers/containment-view-controller/ – anomeric

0

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

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