我有一個應用程序,我在UITableView
中加載圖像。每一行都有一個圖像視圖。觸摸時更新視圖
我從URL下載圖像並將其分配到
UIImageView
。這裏的問題是,如果我拖動表視圖,圖像視圖不會更新。它只在我釋放手指時更新。另一個問題是,我在所有單元格中都有一個標籤,顯示一個使用計時器遞增的計數器。當我的手指在桌子視圖上時,計時器動作也不會被調用。
如何在這兩種情況下進行更新?
可能是這是一個非常基本的問題。但我不知道。
謝謝大家!
編輯:我注意到,-connection:didReceiveResponse:視圖被觸摸時方法不獲取調用。
編輯2:我試着用NSURLConnection添加運行循環。我的方法看起來像這樣。
- (void)start {
NSMutableURLRequest* request = [[NSMutableURLRequest alloc] initWithURL:self.imageURL cachePolicy:NSURLRequestReturnCacheDataElseLoad timeoutInterval:self.timeoutInterval];
[request setValue:@"gzip" forHTTPHeaderField:@"Accept-Encoding"];
_connection = [[NSURLConnection alloc] initWithRequest:request delegate:self startImmediately:YES];
NSPort* port = [NSPort port];
NSRunLoop* rl = [NSRunLoop currentRunLoop]; // Get the runloop
[rl addPort:port forMode:NSRunLoopCommonModes];
[_connection scheduleInRunLoop:rl forMode:NSRunLoopCommonModes];
[_connection start];
[rl run];
}
即使當我觸摸視圖時,也會載入圖像。但桌面視圖滾動速度非常緩慢。它甚至沒有滾動。它只在我拖動時纔會移動。鬆開手指後沒有動作。
您是如何下載圖片的?我想問題是,這些作品在線程上被阻塞,而你爲第一個問題拖動 – Meera
,我更喜歡你使用我開發的擴展'UIImageView'類,你可以在這裏下載[https://github.com/ DipenPanchasara/LazyImageView)我相信它會解決第一個問題,關於第二個我猜,你需要調用更新節方法刷新你的tableView,沒有其他選項。 –
@DipenPanchasara,如果他只想更改一個(或多個)標籤,他爲什麼要調用'ReloadSections'?這種方法不適合。只需更改label.text就足夠了。 – folex