屏幕旋转的处理方法,实现视图位置的变化

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了屏幕旋转的处理方法,实现视图位置的变化相关的知识,希望对你有一定的参考价值。

1.首先在自定义的视图中重写layoutSubviews方法

- (void)layoutSubviews{

  UIInterfaceOrientation orientation = [UIApplication sharedApplication].statusBarOrientation ;//获取屏幕的方向,和状态栏是相同的

if (orientation  == UIInterfaceOrientationLandscapeLeft || orientation == UIInterfaceOrientationLandscapeRight) {//横向时的位置

self.button.frame = CGRectMake (300,150,200,40);

} else {

  self.button.frame = CGRectMake(150,150,100,40);

  }

}

2.在viewController.m文件中

- (void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id<

UIViewControllerTransitionCoordinator

>)coordinator{

  [self.textField resignFirstResponder];//当屏幕尺寸改变时回收键盘

}

//设置屏幕当前方向

- (NSUInteger)supportedInterfaceOrientation{

  return UIInterfaceOrientationMaskAll;

}

 

以上是关于屏幕旋转的处理方法,实现视图位置的变化的主要内容,如果未能解决你的问题,请参考以下文章

在recyclerview片段Reandroid中屏幕旋转后进度条不显示

iPad - 方向变化和视图?

iPad - 通过重新加载的 loadView 处理方向变化

处理屏幕旋转

Android - 片段屏幕旋转[重复]

屏幕旋转