Табличное представление может быть изменено на симуляторе, но не устройстве (OS 3.0) - PullRequest
1 голос
/ 24 августа 2009

Я пытаюсь создать табличное представление, чьи ячейки можно переупорядочить (используя tableView:
moveRowAtIndexPath:toIndexPath метод делегата источника табличного представления).

То, что я написал, прекрасно работает в симуляторе (в OS 3.0) но не на устройстве (iPod touch с ОС 3.0).

Элементы управления перетаскиванием видны как на симуляторе, так и на устройстве, и вышеупомянутый метод срабатывает как на симуляторе, так и на устройстве.

Используя NSLog, я вижу, что на iPod, строки и строки всегда одинаковы.

Кажется, что я могу "выбрать" строку, касаясь элемента управления перетаскиванием, но элемент управления освобождается, как только я начинаю "перетаскивать" вверх или вниз.
У кого-нибудь есть идеи о том, почему это будет?

-(void)tableView:(UITableView *)theTableView moveRowAtIndexPath:(NSIndexPath *)fromPath toIndexPath:(NSIndexPath *)toPath
{   
    NSLog(@"into move method... from:%d  to:%d", [fromPath row], [toPath row]);
    // Make adjustments to the favoritesArray.
    NSMutableDictionary *temp = [[favoritesManager favoritesArray] objectAtIndex:[fromPath row]];
    [temp retain];
    [[favoritesManager favoritesArray] removeObjectAtIndex:[fromPath row]];
    [[favoritesManager favoritesArray] insertObject:temp atIndex:[toPath row]];
    [temp release];
}
...