2013-10-21 27 views
10

temizlemeden bir tablo görünümün verileri yükle. Ben masa görünümü bazı yeni satırlar eklenir (veya kaldırıldı) olabilir ve değişebilir tablo görünümün hücrelerindeki bazı etiketleri yeniden zaman. Ben [tableView reloadData] arayarak elde etmek istiyorum. seçimi de dahil olmak üzere -I seçilebilir satır bir tablo bir görünüme sahip olan seçim durumu

Ne yazık ki bu yöntem, aynı zamanda tablo görünümün bütün durumunu temizler. Ama seçimi korumalıyım. Hala seçilmiş Seçili satırları tutarken

Peki nasıl bir tablo görünümünde tüm verileri yeniden yükleyebilirsiniz? verileri yeniden Önce

rowToSelect = [yourTableView indexPathForSelectedRow]; 

:

cevap

16

Sen ile seçilen satırın endeksi yolunu saklayabilir. Ve yeniden yüklendikten sonra:

[yourTableView selectRowAtIndexPath:rowToSelect animated:YES scrollPosition:UITableViewScrollPositionNone]; 
+1

Oldukça basit: onun fikrine dayanarak bu ben birden seçimi ile çalışmak gerçekleştirme şekli. Teşekkürler! – Mischa

9

JeroVallis çözümü, tekli seçim tablosu görünümleri için çalışır.

NSArray *selectedIndexPaths = [self.tableView indexPathsForSelectedRows]; 
[tableView reloadData]; 
for (int i = 0; i < [selectedIndexPaths count]; i++) { 
    [tableView selectRowAtIndexPath:selectedIndexPaths[i] animated:NO scrollPosition:UITableViewScrollPositionNone]; 
} 
+0

Mükemmel çalışıyor! Teşekkürler! :) –

+0

ama bu daha önce seçilen her hücreler için tekrar DidselectRowAtIndexPath arayacak. Ve kullanıcı bir hücre seçtiğinde kodladığım eylemleri tetikler. – omarojo