首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将iPAD/iPAD 2布局转换为iPhone5 4/iPhone5 5/iPAD-迷你布局

如何将iPAD/iPAD 2布局转换为iPhone5 4/iPhone5 5/iPAD-迷你布局
EN

Stack Overflow用户
提问于 2013-06-18 22:10:25
回答 2查看 213关注 0票数 1

我从来没有在我的应用程序中使用过Interface Builder,也不认为这是件好事。

我的应用程序已经为iPAD/iPAD 2布局而设计,从来没有考虑过让它在iPhone5 4/iPhone5 5/iPAD-mini上工作。现在我想让我的应用程序都能运行。

我认为让4+布局通用应用程序是非常丑陋的,如下所示:

代码语言:javascript
复制
if(ipad or ipad2) 
 view.frame = CGRectMake(0,0,100,100);
else if(ipad-mini)
  view.frame = CGRectMake(0,0,100,100);
else if(iphone4)
  view.frame = CGRectMake(0,0,100,100);
else if(iphone5)
  view.frame = CGRectMake(0,0,100,100);
else if(iphone6)
  view.frame = CGRectMake(0,0,100,100);
else if(iphone7)
  view.frame = CGRectMake(0,0,100,100);

理想情况下,应该只有2种布局,但我不知道如何实现这种方式。这些固定的坐标不会在不同屏幕大小的上延伸。

代码语言:javascript
复制
if(ipad or ipad2 or ipad-mini) 
  view.frame = CGRectMake(0,0,100,100);
else if(iphone4 or iphone5 or iphone6 or iphone7)
  view.frame = CGRectMake(0,0,100,100);

我如何以最好的方式做一个通用应用程序?

EN

回答 2

Stack Overflow用户

发布于 2013-06-18 22:39:28

当你开始开发这个应用程序的时候,你应该做这样的事情:

代码语言:javascript
复制
 view.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleWidth;

你会根据你的需要改变上面的选项。

是的,你需要不同的ipad,iphone

票数 0
EN

Stack Overflow用户

发布于 2013-06-18 22:53:29

首先,您的iPhone布局几乎肯定会与iPad大不相同。对于iPads来说,所有不同的类型都有相同的纵横比,所以你需要担心的就是拥有iPad和视网膜的@2x图像。

然而,对于iPhone,您有iPhone 4/4s和iPhone 5。而且,您的屏幕空间要小得多,所以您需要找到在更小的空间中显示相同信息的方法。这可以使用滚动视图、tableViews和在一个viewController中有一个可以从另一个viewController切换到的信息的一部分来完成。

最后,在大多数情况下,我强烈推荐界面构建器。它负责iPhone和iPhone 5,以及肖像画和风景。它甚至会在旋转手机时自动激活过渡。但是,有时候,当您需要进行自定义绘图时,或者我们的布局真的很难用接口生成器获得时,最好是以编程的方式进行。在这种情况下,检查[[UIScreen mainScreen] applicationFrame]的大小是检查哪个设备的好方法。检查iPad的值为1024x768,iPhone为320x480,iPhone 5为320x568。

但是,您确实应该使用接口构建器(在大多数情况下)。你为什么要回避呢?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17179888

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档