目前我有一個UITableView填充從服務器收集的JPG文件。UIActivityIndicatorView顯示後presentViewController
問題是,當我選擇一個單元格時,活動視圖控制器需要一段時間才能顯示,因爲JPG的大小約爲3mb。
我想要做的是在單元格中放置一個活動指示器,因此當它被選中時它將顯示指示器,直到活動視圖控制器顯示然後消失。
但是,目前發生的情況是,當我選擇單元格時,圖像下載並部分凍結,然後活動視圖控制器彈出,允許「保存到相機膠捲」,但當控制器出現時指標在錯誤的時間也是如此。我也嘗試在視圖控制器顯示之前啓動動畫。
這裏是我到目前爲止的代碼
// creating spinner activity
UIActivityIndicatorView *spinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
spinner.frame = CGRectMake(0, 0, 24, 24);
UITableViewCell *Cell = [tableView cellForRowAtIndexPath:indexPath];
Cell.accessoryView = spinner;
//popup menu for save to camera roll
UIImage * image = [[UIImage alloc] initWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:path]]];
UIActivityViewController* activityViewController =
[[UIActivityViewController alloc] initWithActivityItems:[NSArray arrayWithObject:image]
applicationActivities:nil];
//check to see if jpg file
if([ext isEqualToString:@"jpg"]) {
[spinner startAnimating];
[self presentViewController:activityViewController animated:YES
completion:^{}];
}
這是人們面對表視圖時相當常見的問題,您需要異步加載圖像。 [SDWebImage](https://github.com/rs/SDWebImage)是最好的選擇。 – Mar0ux
我不確定在SDWebImage上,我試圖按照說明安裝那裏的github,但是當我完成了所有的步驟,並去建立我有多個錯誤,你能提供給我任何其他的鏈接,讓它的工作? @ Mar0ux – teejay
SDWebImage上的兩件事:'iOS 5.0最低部署版本'並使用ARC。但我很困惑:你的問題只是在加載圖像時凍結或者其他的問題? – Mar0ux