我在橫向模式下啓動我的應用程序(iPhone和iPand)。在viewDidAppear中設置UIView幀,解決iPad中用於啓動定向模式的幀問題橫向
我viewDidAppear發現爲iPad幀改變該幀在,比viewWillAppear中一個在。
IOS IPAD 5.1模擬器
在viewWillAppear中它是0.000000 20.000000 768.000000 1004.000000。
同時,在viewDidAppear它是0.000000 0.000000 748.000000 1024.000000
IOS IPAD 6.0模擬器 [但IOS相當supprised 6的ipad模擬器]
在viewWillAppear中它是0.000000 0.000000 748.000000 1024.000000
while,viewDidAppear與viewWillAppear相同。
所以,我可以設置框架爲我viewDidAppear子視圖?因爲這裏是完美的框架。
對於iPhone的結果是相同的方法20.000000 0.000000 300.000000 480.000000。
爲什麼會出現在的iPad和iPhone不同的行爲?
Info.plist具有左側和右側風景的「支持的接口方向」,「初始接口方向」設置爲landscapeLeft。
AppLaunch方法如下:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
self.viewController=[[ViewController alloc] init];
self.window.rootViewController = self.viewController;
}
ViewController.m有以下幾種方法
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
if(UIInterfaceOrientationIsLandscape(interfaceOrientation)){
return YES;
}
return NO;
}
Please Find the project at this link
對我來說這似乎是一個有效的問題。如果投票人進行了一些推理,那將會很好。你有一個明確的問題,但幾乎沒有你的代碼,所以我們不知道你給我們的代碼是用於iPad,iPhone還是兩者,或者你的代碼或IB文件中的問題。您是在任何地方手動設置框架,還是所有在XIB /故事板中處理的佈局? – DBD
@DBD對你的問題很有幫助。我已經上傳了該項目,請在該問題中找到鏈接。 – andyPaul