2009-11-24 5 views
0

Я реализую метод didSelectRowAtIndexPath: в реализации tableviecontroller. Я получаю предупреждение о конфликте в моем коде. Кажется, все работает, но предупреждение меня пугает. Код в моем файле реализации выглядит следующим образом.Почему я получаю предупреждение «конфликтующего типа» при реализации didSelectRowAtIndexPath:

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

Первоначально я имел возвращаемый тип (NSIndexPath *), но обнаружил, что тип должен быть недействительным, как указано в UITableView.h. Оба типа возврата имеют одинаковый эффект. Код работает, но я получаю следующее предупреждение ...

warning: conflicting types for '-(void)tableview:(UITableView *)tableView... 

Спасибо за любую помощь вы можете дать ...

ответ

10

Ваш тип возвращаемого значения должен быть void, не void *, как указано в UITableViewDelegate документация.

+0

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

+0

Спасибо! Я буду более осторожен, чтобы скопировать объявление в следующий раз ... – Michael