我正在使用我的應用程序委託來替換視圖。首先我刪除當前視圖,然後添加新視圖,然後運行一個石英動畫。IPHONE:在App Delegate中刪除/添加子視圖後,方向更改失敗
無論我首先加載什麼視圖,方向變化都按預期發生。只要我開始嚮應用程序委託中的窗口添加新視圖(刪除舊視圖),方向更改不再發生。假設shouldAutorotateToInterfaceOrientation在所有我的UIViewControllers中都帶有YES。
我拿出石英動畫,這裏是我還是堅持:
-(void) showSongList {
[songVC.view removeFromSuperView];
navVC = [[NavigationViewController alloc] initWithNibName:0 bundle:0];
[window addSubView:navVC.view];
[songVC release];
songVC = nil;
}
切換視圖正常工作。第一個視圖總是響應並切換方向,然後我對窗口添加視圖所做的任何更改(始終刪除前一個視圖)會減少方向更改。
如果我加載navVC馬上就會旋轉方向,但若進一步的下降從一個按鈕事件的線,我得到我所描述的定位問題。
的NSLog(@ 「子視圖計數=%d」,[[窗口子視圖]計]); //始終爲1
我在didRotateFromInterfaceOrientation使用的NSLog試圖和這個功能明顯時的取向發生變化時,纔會調用。
我的應用程序代理窗口始終只有一個子視圖,所以我輸了!