天天看點

iOS 中設定程式應用橫豎屏設定

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

<plist version="1.0">

<array>

<string>UIInterfaceOrientationLandscapeLeft</string>

<string>UIInterfaceOrientationLandscapeRight</string>

</array>

</plist>

這裡添加的代碼是應用剛啟動的時候的設定

在代碼中添加

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    // Return YES for supported orientations cgpvdbds
    //return YES; //YES 支援所有方向上的變動
    return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft || interfaceOrientation == UIInterfaceOrientationLandscapeRight ); //設定為橫屏,有兩個方向,互相對稱
}
           

以上的代碼是豎屏的,如果要哥哥方向都行的話就添加四個方向

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    // Return YES for supported orientations cgpvdbds
    //return YES; //YES 支援所有方向上的變動
    return  YES;
}
           

以上便是今日所學之心得,如果有什麼不對的,望前輩指點

補充:

#pragma mark - 控制旋轉

// after ios6

-(NSUInteger)supportedInterfaceOrientations{

    return UIInterfaceOrientationMaskLandscape;

}

- (BOOL)shouldAutorotate

{

    return  YES;

}

// before ios6 

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation

{

    return UIInterfaceOrientationIsLandscape(interfaceOrientation);    

}

- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration {

    [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(hiddenControls) object:nil];

    [self hiddenControls];

}

-(void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation {

    NSLog(@"rotate");

}