• 解决 iphone5 4 inch 屏 app黑边问题 (转)


    iphone5 出来后,针对旧版屏幕的app 放到新iphone 上将会导致黑边问题..

    原因: 多出来的88个点将会将会被自动均分为上下两部分.背景为黑色.如图示:

    解决办法:

      使用绝对布局的开发者,可能需要对程序进行一些修改.如

    CGRect frame =CGRectMake(0,0,320,460);
    yourController.view.frame =frame;

    以上布局将导致控件固定在某一位置...开发者应逐渐放弃该种布局方式,而采用自适应的动态方式..

      解决办法:

      步骤一. 升级xcode 到4.5

      步骤二. 宏定义获取设备屏幕大小来替换你程序中使用 320,460的一些绝对坐标;

    复制代码
    //设备屏幕大小
    #define __MainScreenFrame   [[UIScreen mainScreen] bounds]
    //设备屏幕宽
    #define __MainScreen_Width  __MainScreenFrame.size.width
    //设备屏幕高 20,表示状态栏高度.如3.5inch 的高,得到的__MainScreenFrame.size.height是480,而去掉电量那条状态栏,我们真正用到的是460; 
    #define __MainScreen_Height __MainScreenFrame.size.height-20
    复制代码

      步骤三.你需要一张640*1138的预加载图(launch image).在工程>TARGETS 中添加,系统将自动将其重命名为Default-568h@2x.png.如下:

    结果:

      

    ps.实际上是中间部分被拉伸了88point..如果表格是tableView这将不造成多大的影响.但如上图比较可知,将会造成部分空白的地方.因而,我们需要判断屏幕大小的时候对高度进行判断,再改变中间部分控件的高度.感觉还是比较麻烦..有人说在直接使用460,再放2栏广告在最下方,感觉也不错啊.^_^

    转自: http://www.cnblogs.com/try2do-neo/archive/2012/09/21/2696821.html

  • 相关阅读:
    C# Tostring()方法
    sql order by和case THEN 并用
    Lazarus Reading XML- with TXMLDocument and TXPathVariable
    Lazarus Reading XML- with TXMLDocument and TDOMNode
    Lazarus Coolbar and AnchroDocking
    Windows live writer 2012 测试
    组态王数据字典区块定义
    组态软件状态指示定义
    西门子Step7中DB块结构导出
    Delphi 不用标题栏移动窗体
  • 原文地址:https://www.cnblogs.com/yingkong1987/p/2700806.html
Copyright © 2020-2023  润新知