2013-12-04 3 views
0

В моем приложении я использую две таблицы для фильтрации данных, а второй для данных результатов. Я использую следующую строку прокрутки TableView в выбранной позиции индекса,Пользовательский стол, получающий сбой в iPhone5 (iOS7)

self.indexPaths = [NSIndexPath indexPathForRow:0 inSection:indexPath.row]; 

[tableview scrollToRowAtIndexPath:self.indexPaths atScrollPosition:UITableViewScrollPositionTop animated:YES]; 

    [tableview reloadData]; 

, но мое приложение получает сбой лишь в iPhone5 (iOS7) и работает отлично во всех устройствах, даже iPhone5 (iOS6).

Почему это происходит только на iPhone5 (iOS7)?

разбивая журнал является: Нагрузочным приложением из-за неперехваченное исключением 'NSInvalidArgumentException'

+0

Это помогает при задании вопросов о сбоях, чтобы фактически включить журнал сбоев в вопрос. – Abizern

+0

Обычно эта ошибка сообщает вам, какой незаконный аргумент был передан объекту, в каком методе, который указал бы на корень проблемы, как показывают текущие ответы. – Abizern

ответ

4

Вы передаете целое число (0) для индекса пути. Вы должны пройти NSIndexPath вместо этого, попробуйте:

NSIndexPath *ip = [NSIndexPath indexPathForRow:0 inSection:0]; 
    [tableview scrollToRowAtIndexPath:ip atScrollPosition:UITableViewScrollPositionTop animated:NO]; 
2

NSIndexPath является объектом, так что вы не можете передать .

Попытка [NSIndexPath indexPathWithIndex:0]

0
self.indexPaths = [NSIndexPath indexPathForRow:0 inSection:indexPath.row]; 

РИТ возвращает indexpath, соответствующий строке и секции.

в вышеуказанном коде, вы проходите indexpath.row до inSection параметр. Это может быть неверно. Предположим, у вас есть 1 секция и 5 строк. когда indexpath.row = 4 (например,) не будет секцией, соответствующей 4, и поэтому self.indexPaths станет nil, так как система попытается найти строку 4 в разделе 4, но раздел 4 не существует !! Следовательно, когда вы передаете нуль ниже строки, в ней указано исключение nsinvalidargument.

tableview scrollToRowAtIndexPath:self.indexPaths atScrollPosition:UITableViewScrollPositionTop animated:YES]; 
+0

Спасибо за ваш ответ, , но его работающий штраф на всех устройствах, кроме iPhone5 – jigs

+0

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

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