我有一個UITableView
與項目列表。在我導航到使用顯示所選項目的詳細信息的新視圖項目的選擇:iPhone - 在推送新的ViewController上選擇UITableViewCell前更新當前視圖
DetailsVC *detailsView = [[DetailsVC alloc] initWithNibName:@"DetailsVC" bundle:nil];
[self.navigationController pushViewController:detailsView animated:YES];
現在,詳細查看從遠程位置獲取數據等連接速度慢可能需要幾秒鐘。我想要做的是在所選行上顯示一個活動指標。
問題是添加的指標的顯示被延遲,直到下一個視圖準備導航到,這使指標變得毫無用處。
我一直試圖在這些兩個事件具有相同效果的添加此指標:
- (NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
有沒有辦法在添加指示(或更一般的,修改UITableViewCell
的內容)在導航發生之前的選擇時刻。
作爲一個實驗,我也嘗試在相同的兩個事件中彈出一個警報視圖,導致在導航到詳細信息視圖後彈出警報。
謝謝,該工作! – mrt 2011-04-04 10:03:39
此外,我遇到了這種解決方法。如果將耗時的operaton放在'DetailsVC'的' - (void)viewDidAppear:(BOOL)animated'而不是' - (void)viewDidLoad'中,視圖將被立即推送,您將能夠顯示活動指示符在那個視角而不是前一個視角。 – mrt 2011-04-04 10:11:39