我的代碼如下所示:iPhone:在推動viewcontroller之前等待selectrow動畫完成?
NSIndexPath *ip = [NSIndexPath indexPathForRow:15 inSection:0];
[[self tableView] selectRowAtIndexPath:ip animated:YES scrollPosition:UITableViewScrollPositionMiddle];
// Pause needed here until animation finishes
[[self navigationController] pushViewController:secondView animated:YES];
現在它的動畫行的滾動/選擇和推動,同時視圖控制器。我希望它做的是等到它完成滾動/選擇,然後推動視圖控制器。有沒有可能的方法來做到這一點?謝謝
這幾乎是完美的!它無法捕捉的唯一情況是該行已經在屏幕上,因此不需要滾動來實現。在這種情況下,它只會突出顯示單元格,而不會調用此方法。有沒有辦法解決? – Mike 2010-03-14 08:51:55
試試這個:調用indexPathsForVisibleRows,看看你選擇的單元格是否在數組中。如果是,請在那裏調用push(並且不要將weShouldPushSecondView設置爲YES)。如果單元格不在可見列表中,則將weShouldPushSecondView設置爲YES(並且不要在該處調用該按鈕,並在滾動完成時調用它)。您可能想要將bool的名稱更改爲pushSecondViewAfterScroll。 – DyingCactus 2010-03-14 15:09:07