Youtube喜欢使用Ipad中的大小类在横向模式下查看

时间:2016-01-19 14:50:59

标签: objective-c ipad autolayout landscape-portrait size-classes

我需要将我在景观中的现有视图更改为类似于Youtube在横向中所做的事情。目前我正在使用大小类和故事板来实现它但问题是我的布局应该在横向上与肖像相比发生很大变化因为ipad肖像和横向的大小类是相同的,我应该为横向版本使用单独的视图控制器。我当前的纵向视图也稍微复杂,其中嵌入了子视图控制器..什么是最好的方法按照从ipad肖像到横向的无缝过渡..你认为youtube正在使用不同的viewcontrollers / xib来实现它..另一个问题是这个代码是由其他公司编写的,给我的指示是不改变存在的代码很多..我不想吝啬它..

PFA用于显示当前版本的外观以及它应如何看起来像风景的图像。 当前版本

enter image description here

建议版本

enter image description here

编辑1:我已经在我的视图控制器中实现了viewWillTransitionToSize。我的问题是,我应该使用两个不同的xib还是我可以使用不同的视图控制器来完成横向版本..它的优点和缺点是什么?从下面的图片可以看出,我需要对我的横向版本做一些改动..

缩小视频大小,隐藏分段控件并在侧面添加两个tableview ..

1 个答案:

答案 0 :(得分:0)

您应该实现UIContentContainer protocol方法viewWillTransitionToSize,并使用视图控制器的视图框架检查大小的宽度和/或高度,并采取相应措施。

在斯威夫特:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
  

讨论

     

UIKit在更改a的大小之前调用此方法   提出了视图控制器的视图。您可以在您的帐户中覆盖此方法   拥有对象并使用它来执行与大小相关的其他任务   更改。例如,容器视图控制器可能使用此方法   覆盖其嵌入式子视图控制器的特征。使用   提供协调器对象以动画您所做的任何更改。

     

如果您在自定义视图控制器中重写此方法,请始终   在你的实现中的某个时刻调用super,以便UIKit可以   适当地转发尺寸变化信息。查看控制器   将大小更改消息转发到其视图和子视图   控制器。演示控制器将尺寸变更转发给他们   提出了视图控制器。