iOS 单独设置某个控制器横屏

释放双眼,带上耳机,听听看~!

iOS程序开发中,若要单独让某个控制器横屏,可以用如下方法:

  • 在 AppDelegate.h 添加属性:
//屏幕方向
@property (nonatomic, assign) NSInteger allowRotation;
  • 在 AppDelegate.m 添加方法:
- (UIInterfaceOrientationMask)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window
{
if (_allowRotation == 1) {
return UIInterfaceOrientationMaskLandscapeRight;
}else {
return UIInterfaceOrientationMaskPortrait;
}
}
  • 可以在跳转控制器中设置:
HWGoalVC *vc = [[HWGoalVC alloc] init];
[self.navigationController presentViewController:vc animated:YES completion:nil];
  • 在目标控制器中设置:
AppDelegate *appDelegate = (AppDelegate *)[UIApplication sharedApplication].delegate;
appDelegate.allowRotation = 1;
  • 在目标控制器返回时设置:
- (void)back
{
AppDelegate *appDelegate = (AppDelegate *)[UIApplication sharedApplication].delegate;
appDelegate.allowRotation = 0;
[self dismissViewControllerAnimated:YES completion:nil];
}
  • 若想隐藏StatusBar,可调用如下方法:
- (BOOL)prefersStatusBarHidden
{
//iOS7前隐藏StatusBar
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];
//iOS7以后隐藏StatusBar
return YES;
}

 

人已赞赏
iOS文章

iOS 截取字符串中汉字

2020-2-26 12:21:45

iOS文章

iOS 开发法webview头部加个自定义view,这个view不是固定的而是要跟webview一起滚动

2020-2-26 13:44:21

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索