我正在使用UINavigationController來管理我的UIViewControllers層次結構。對於這些UIViewController之一,我需要以編程方式更改其視圖邊界(取決於具體條件),所以我用setBounds,它工作正常。UIView和-setBounds問題
我的問題是這樣的:當我改變這個視圖邊界,然後推另一個UIViewController到UINavigationController堆棧,然後彈出最後一個UIViewController,我的界限改變丟失。我想這是因爲我的UIView被重繪,但我認爲邊界修改仍然是活的。
我可以在視圖出現後再次更改我的UIView邊界,但用戶會注意到視圖邊界的修改。
任何提示?這是常見的情況,還是因爲我的UIView從XIB加載,我錯過了一個參數或什麼?
謝謝:)
編輯:只注意到正確的(在動畫)
這將是最好的選擇,但不幸的是我需要改變從我的UINavigationController委託邊界(因爲這個邊界修改是獨立於視圖;修改可能發生在我的任何意見) – Vivi 2009-12-30 16:53:36
等效的委託方法是navigationController:willShowViewController:animated :.當你重新設置邊界時發生了什麼? – 2009-12-30 17:14:06
當我更改willShowViewController方法中的邊界時,我的界限在顯示之前顯然被覆蓋,所以此刻,界限修改在didShowViewController中完成 – Vivi 2010-01-04 15:53:30