2013-12-06 3 views
4

У меня есть UITableView, содержащий пользовательский UITableViewCell, который содержит время (до ближайшей миллисекунды). При прокрутке текст времени не обновляется до тех пор, пока прокрутка не остановится. Я знаю, что это, вероятно, желаемое поведение по умолчанию для большинства людей, но я хочу, чтобы ячейка продолжала обновляться даже при прокрутке. Есть ли способ сделать это? Я не мог найти ничего в документации.Разрешить UITableViewCell обновлять контент даже при прокрутке

Ячейка использует NSTimer для рекурсивного вызова функции времени обновления 30 раз в секунду. Эта функция обновляет UILabel в ячейке.

ответ

4

Отъезд this answer для глубокого чтения. Короче говоря, вам нужно настроить таймер на запуск в обычном режиме. Таким образом, он будет обновляться, в то время как другие вещи берут поток пользовательского интерфейса. Вот как я использую шахту:

downloadAnimationTimer = [NSTimer scheduledTimerWithTimeInterval:.05 target:self selector:@selector(animateDownloadButtons) userInfo:nil repeats:YES]; 
[[NSRunLoop mainRunLoop] addTimer:downloadAnimationTimer forMode:NSRunLoopCommonModes]; 
-2

Использовать UITableViewDelegate. Этот метод вызывается при прокрутке таблицыView.

- (void)scrollViewDidScroll:(UIScrollView *)scrollView 
{ 
    NSArray* arrayVisibleCells = [tableViewContent visibleCells]; 

    for (UITableViewCell* cell in arrayVisibleCells) 
    { 
     //update code 
    } 
} 
+0

Это не работает и не отвечает на заданный вопрос –

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