iOS通用屏幕设计

标签 ios iphone ipad ipod

我的团队针对 iPad、iPad Mini、iPod、iPhone 等不同的 iOS 屏幕进行不同的屏幕设计。在完成支持/适合所有屏幕的单个设计时,是否有一种通用方法可以做到这一点。目前,我们在不同设备和不同版本的应用程序上面临更多问题。上面提到的是一个完全原生的 iOS 应用程序。不是 phonegap/不是 Titanium。

这就是我们为不同设备编写代码的方式。

            if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) {
            if([UIScreen mainScreen].bounds.size.height == 568)
            {
                HelpView.frame=CGRectMake(7, 0, 300, finalheight+30);
                himgview.frame=CGRectMake(7, 560, 300, finalheight+30);
            }
            else if([UIScreen mainScreen].bounds.size.height==480){
                HelpView.frame=CGRectMake(0, 0, 310, finalheight+30);
                himgview.frame=CGRectMake(5, 555, 310, finalheight+30);
            }
        }
        else{
            if([UIScreen mainScreen].bounds.size.height == 568)
            {
                HelpView.frame=CGRectMake(7, 0, 300, finalheight+30);
                himgview.frame=CGRectMake(7, 550, 300, finalheight+30);
            }
            else if([UIScreen mainScreen].bounds.size.height==480){
                HelpView.frame=CGRectMake(0, 0, 310, finalheight+30);
                himgview.frame=CGRectMake(5, 555, 310, finalheight+30);
            }
        }

最佳答案

通过不同的屏幕设计,我假设您的意思是使用不同的 XIB 或 Storyboard? 如果那确实是您所做的正确的事情,我建议您看一下 Auto Layout . 这样,您只需描述您希望元素如何布局,iOS 就会根据屏幕尺寸自动对它们进行布局。这样一来,您就可以只使用一两个(iPad 和 iPhone) Storyboard,从而无需为每个屏幕分辨率创建单独的布局。
顺便说一句,即使没有自动布局,您也不需要为 iPad 和 iPad Mini 或者 iPod 5 和 iPhone 5 使用不同的布局,因为它们共享相同的分辨率。

关于iOS通用屏幕设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21478109/

相关文章:

ios - Swift 如何获取对象的 "pass by value"

iPhone - 更改子子子子 NSMutableDictionary 值

ios - 将麦克风静音

ios - 更新 NSError 用户信息

iphone - TTSearchTextFieldDelegate 不调用 textField :didSelectObject:

iphone - 如何通过单击 UIPageControl 的点来更改页面

iphone - 如何在使用 iOS5 或 iOS6 的 iPhone/iPad 拍摄的照片上添加文字标签?

css - iPad 联系链接 CSS 覆盖

ios - 如何在 TextView / WebView 中进行左对齐和对齐

objective-c - 难以实现 NSUndoManager 重做功能