получить значение из пользовательского UITableViewCell - PullRequest
2 голосов
/ 25 июля 2011

У меня есть пользовательский UITableViewCell, который имеет объект UISegmentedControl. Мой UITableView (форма анкеты) имеет 6 из этой пользовательской ячейки (6 сегментированных элементов управления). У меня проблемы с получением selectedSegmentIndex элементов управления сегмента. Я предполагаю, что ячейки освобождаются после генерации таблицы. Я получаю значения, используя следующий код:

MyCustomCell *q1 = (MyCustomCell *)[tableView cellForRowAtIndexPath:[NSIndexPath indexPathWithIndex:0]];

int segmentIndex = (int) q1.segmentedController.selectedSegmentIndex;

int segmentIndex всегда дает одно и то же значение 0 независимо от выбранного индекса.

1 Ответ

4 голосов
/ 25 июля 2011

Вы должны использовать правильный метод для инициализации пути индекса для раздела и строки, которые вы хотите использовать, в противном случае свойства row и section не будут установлены правильно, и вы будете получать одну и ту же ячейку каждый раз:
+(NSIndexPath *)indexPathForRow:(NSUInteger)row inSection:(NSUInteger)section;.

Код выглядит так:

// getting the cell at third row of first section
NSIndexPath *ip = [NSIndexPath indexPathForRow:2 inSection:0];
MyCustomCell *q1 = (MyCustomCell *)[tableView cellForRowAtIndexPath:ip];
int segmentIndex = (int) q1.segmentedController.selectedSegmentIndex;

Вы также можете обратиться: Справочник по дополнениям UInit NSIndexPath для получения дополнительной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...