好吧,這有點難以解釋,但我在這裏。在「View1
」我使用動畫UIView
轉到「View2
」。我做的動畫是通過黑色淡入淡出,切換視圖。我通過-addSubview
得到View2
。現在讓我們說我們在View2
,我的動作被調用去View3
使用presentModalView
。由於我需要刪除「View2
」視圖,因此我[self.view removeFromSuperview
];在我的viewDidDisappear
方法中,這樣動畫去View3
沒有搞砸。 這是問題所在,當我從「View3
」返回到「View1
」時,我再次使用presentModalView
進行動畫翻轉。現在你知道當你經常翻轉視圖時,你會看到背景中的背景(通常是白色),而不是它的「View2
」。所以它就像是以某種方式被緩存。 有誰知道這是爲什麼?如果我需要發佈代碼,我可以。UIView被緩存?
回答
實際上,你可以查看本教程的使用UINavigationController
:
http://www.icodeblog.com/2008/08/03/iphone-programming-tutorial-transitioning-between-views/
要隱藏你的導航欄你可以看到這個帖子:
編輯1:
立即在此上傳項目:http://www.2shared.com/file/qU-QT8fl/Project.html 閱讀ReadMe.text文件。 :P
好,所以我讀了它,但讓我在這裏得到一件事,我不必在IB做任何事情來更改UIViewController到UINavigationController正確?唯一的變化是切換視圖代碼,這就是它? –
你可以這樣做:通過XIB在你的UINavigationController中放置一個UIViewController,或者,你可以將它添加到代碼中。基本上在那之後你將需要一個對你的UINavigationController(IBOutlet)的引用,所以你可以從它推入和彈出視圖。 – Peres
好吧,我有點困惑。是否有任何教程從我的狀態轉換爲使用UINavigationControllers?我明白你在說什麼,但不知道該怎麼做。我不想搞亂我的應用程序。我已經有了8個XIB,並且都是uiviewcontrollers。 –
- 1. 在uiview中緩存繪圖
- 2. 值被緩存
- 3. 如何被緩存
- 4. HttpContext.Current.Request.Url.Authority被緩存IIS
- 5. orchard userPart被緩存?
- 6. wp-admin被Apache緩存
- 7. 確保queryset被緩存
- 8. 緩存是否被覆蓋?
- 9. Android Gradle - 緩存被鎖定
- 10. 緩存值被覆蓋?
- 11. 爲什麼window.name被緩存?
- 12. 文件沒有被緩存
- 13. 爲什麼CSS被緩存?
- 14. Curried函數被緩存?
- 15. 寶石緩存被棄用
- 16. 緩存如何被擊敗?
- 17. Roles.GetRolesForUser()結果會被緩存
- 18. UIView被禁用
- 19. UIView被保留
- 20. Azure Blob - 緩存控制不被保存
- 21. 光油緩存 - 連接被拒絕
- 22. 爲什麼動作結果被緩存?
- 23. 代理資產是否被緩存?
- 24. 將拉姆達FUNC被「緩存」 /想起
- 25. 緩存:true被資源忽略
- 26. 批處理文件似乎被緩存
- 27. 緩存集合沒有被Nhibernate無效
- 28. IIS 7.5和圖像未被緩存
- 29. 如何防止.NET JSON被緩存
- 30. registerTempTable是否會導致表被緩存?
我認爲Apple建議爲每個單獨的「屏幕」使用一個單獨的視圖控制器。我知道這不是一個真正的答案,但如果你使用這個框架,它可能會更順利。 –
它是一個單獨的視圖控制器。我將一個單獨的視圖控制器(另一個xib)作爲子視圖添加。 –
視圖控制器應該被允許控制他們自己的視圖,我想 - 你可能在視圖控制器之間而不是在視圖之間轉換更多運氣。這聽起來像'UINavigationController非常適合這種用例。 –