didSelectRowAtIndexPath с пользовательской ячейкой

Я создал подкласс UITableViewCell для создания пользовательской ячейки. В ViewController я добавил UITableView и ячейку прототипа. Моя пользовательская ячейка появляется и работает нормально.

Но в моих методах didSelectRowAtIndexPath и didDeselectRowAtIndexPath появляется предупреждение, от которого я не могу избавиться.

-(void)tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath {

MVGoalTVCell *cell = [self.tableView cellForRowAtIndexPath:indexPath];
NSString *cellText = cell.txtBox.text;

LogInfo(@"DESELECTED: %@", cellText);

}

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{

MVGoalTVCell *cell = [self.tableView cellForRowAtIndexPath:indexPath];
NSString *cellText = cell.txtBox.text;

LogInfo(@"SELECTED: %@", cellText);

}

Предупреждение появляется в строке:

MVGoalTVCell *cell = [self.tableView cellForRowAtIndexPath:indexPath];

Я ссылаюсь на свою пользовательскую ячейку в MVGoalTVCell.

Появляется следующее предупреждение:

Несовместимые типы указателей, инициализирующие «MVGoalTVCell *» с выражением типа «UITableViewCell *»

Как я могу исправить это предупреждение?


person motionpotion    schedule 18.12.2013    source источник


Ответы (1)


Используйте приведение типов, чтобы исправить предупреждение.

MVGoalTVCell *cell = (MVGoalTVCell *)[self.tableView cellForRowAtIndexPath:indexPath];

person hv88    schedule 18.12.2013
comment
Это исправило это. Спасибо @hv88. - person motionpotion; 18.12.2013