如果我忽略了模態VC並在少於一定的時間內再次顯示它(或另一個),它不會出現。 我錯過了什麼嗎?presentModalViewController不起作用,如果調用太早
3
A
回答
8
是的,你不能那樣做。我假設你所做的是這樣的:
[self dismissModalViewControllerAnimated:YES];
[self presentModalViewController:myNewController animated:YES];
這是行不通的。我不知道爲什麼,但它與我相信的動畫有關。你的選擇是關閉沒有動畫的第一個,或者等待在父視圖的viewDidAppear中顯示新的(或者可能是先前的模式視圖的viewDidDisappear,但不知道這是否可行)。
0
你不能解僱之後另外兩個模式視圖控制器,除了其他的什麼海報建議,可以等待的時間少量駁回其他模式的看法,例如
[self performSelector:@selector(method) withObject:nil afterDelay:.5];
其中,該方法前所謂的只是解僱你的其他模態觀點。 代碼片段在.5秒後執行選擇器,並且可以在動畫計時問題(如所描述的動畫計時問題)時使用,以便分離通話時間以便正確執行通話時間。
+0
這是一個有點危險(不是很多),如果解僱動畫需要比你的延遲時間更長,你的模態vc仍然不會出現。 (時間可能會隨着操作系統更新而改變。)亞歷克斯的方法對這個問題是免疫的。 – 2010-10-14 04:33:01
相關問題
- 1. 從AppDelegate調用presentModalViewController不起作用
- 2. iOS PresentModalViewController不起作用
- 3. Template.onRendered()調用太早
- 4. Promise調用得太早
- 5. completionHandler()被調用太早
- 6. 爲什麼presentModalViewController不起作用?
- 7. SDL析構函數調用太早
- 8. C++析構函數太早調用
- 9. zombie.js訪問()回調太早(使用browserify)
- 10. 如果hasClass不起作用
- 11. jquery如果不起作用
- 12. 如果css()== X,否則不起作用,表單不起作用
- 13. presentModalViewController不工作
- 14. presentModalViewController不工作?
- 15. 如果語句在Jquery Ajax調用中不起作用?
- 16. 如果我從bash腳本調用它,Killall不起作用
- 17. 如果僅調用一次,applyBinding()不起作用
- 18. zombie:ajax調用不起作用
- 19. Ajax調用不起作用
- 20. Htaccess如果不存在,不起作用
- 21. G1GC內存不足太早
- 22. jquery效果不起作用
- 23. 在UIView類中調用presentModalViewController
- 24. 調用presentModalViewController dismissModalViewControllerAnimated有問題
- 25. 調用presentModalViewController導致「EXC_BAD_ACCESS」
- 26. 如果排名不起作用
- 27. Javascript longhand如果條件不起作用
- 28. 如果mysql_num_rows等於零不起作用
- 29. C++如果語句不會起作用
- 30. 如果(值===真)不起作用
這是行不通的原因是因爲當動畫完成時,視圖控制器會刪除它對模態vc的引用。因此它不認爲它有另一個視圖控制器來表示模態了。兩種建議的解決方案都可以使用。 – 2010-10-14 04:31:14
這裏發佈的答案有關這兩種方法的更多細節。 http://stackoverflow.com/questions/3919845/presenting-a-modal-view-controller-immediately-after-dismissing-another/3919870#3919870 – 2010-10-14 04:34:58