转载

IOS之ipad和iphone之间的xib的适配所有的屏幕

今天在项目中运到了这个的一个问题,就是在原来的xib的是适配所有的iphone屏幕,然而现在既要适配iphone 也要适配Ipad,搞的很头大,现在就为了实现这个效果,老大给我了两种方法,就是在xib的基础上修改的,之直接上代码了,不多说了.

第一种方式:修改xib的文件(source code)

1.在适配所有的iphone的屏幕的xib中会出现这个东西:

<variation key="default">

<mask key="subviews">

<exclude reference="OdZ-PL-lF9"/>

</mask>

<mask key="constraints">

<exclude reference="C4c-3V-hBQ"/>

<exclude reference="au7-kX-z5f"/>

</mask>

</variation>

<variation key="heightClass=regular-widthClass=compact">

<mask key="subviews">

<include reference="OdZ-PL-lF9"/>

</mask>

<mask key="constraints">

<include reference="C4c-3V-hBQ"/>

<include reference="au7-kX-z5f"/>

</mask>

</variation>

把所有的"heightClass=regular-widthClass=compact"替换成"default";就可以替换成Any-Any的屏幕的适配了.

之前的效果是在iphone的适配的效果:

IOS之ipad和iphone之间的xib的适配所有的屏幕

修改之后在Any-Any的屏幕适配的效果: IOS之ipad和iphone之间的xib的适配所有的屏幕

第二种方式:比较麻烦,建议不使用这个方法:(选中这个控件,然后选择Any-Any)把iphone的屏幕的东西删除就可以了:如图所示:

IOS之ipad和iphone之间的xib的适配所有的屏幕

对应的约束也要,进行同样的修改,也可以实现同样的效果:如图:

IOS之ipad和iphone之间的xib的适配所有的屏幕

最后也可以实现这个效果了,希望可以帮助到有需要的人:

正文到此结束
Loading...