• iPhone的xib与iPad的xib相互转换


    1. xib转换

    iPhone版本APP开发完成后需要再开发iPad版本的APP,需要把iPhone版本的xib文件添加到iPad项目中去,但是Xcode中iPhone和iPad使用的xib格式不能完全互换,此时需要转换xib的文件内容。

    分析iPad和iPhone的xib文件,可知两者之间的区别,直接使用source方式打开xib文件,检索替换并保存即可。
    以下是iPad和iPhone的xib文件之间的区别,请注意区分xib的文件版本。

    旧版本(Xcode4.2)

    iPad

    type=”com.apple.InterfaceBuilder3.CocoaTouch.iPad.XIB”
    <string key=”targetRuntimeIdentifier”>IBIPadFramework</string>

    iPhone

    type=”com.apple.InterfaceBuilder3.CocoaTouch.XIB”
    <string key=”targetRuntimeIdentifier”>IBCocoaTouchFramework</string>

    新版本
    iPad

    targetRuntime=“iOS.CocoaTouch.iPad”
    type=”com.apple.InterfaceBuilder3.CocoaTouch.iPad.XIB”

    iPhone

    targetRuntime=“iOS.CocoaTouch”
    type=”com.apple.InterfaceBuilder3.CocoaTouch.XIB”

    如果文件量太多的话,那可以使用以下shell脚本批量替换
    iPhone -> iPad

    1
    2
    3
    4
    5
    6
    
    find . -type f -name '*.xib' | xargs perl -pi -e 
    's|"com.apple.InterfaceBuilder3.CocoaTouch.XIB"|"com.apple.InterfaceBuilder3.CocoaTouch.iPad.XIB"|g'
    find . -type f -name '*.xib' | xargs perl -pi -e 
    's|IBCocoaTouchFramework|IBIPadFramework|g'
    find . -type f -name '*.xib' | xargs perl -pi -e 
    's|"iOS.CocoaTouch"|"iOS.CocoaTouch.iPad"|g'

    iPad -> iPhone

    1
    2
    3
    4
    5
    6
    
    find . -type f -name '*.xib' | xargs perl -pi -e 
    's|"com.apple.InterfaceBuilder3.CocoaTouch.iPad.XIB"|"com.apple.InterfaceBuilder3.CocoaTouch.XIB"|g'
    find . -type f -name '*.xib' | xargs perl -pi -e 
    's|IBIPadFramework|IBCocoaTouchFramework|g'
    find . -type f -name '*.xib' | xargs perl -pi -e 
    's|"iOS.CocoaTouch.iPad"|"iOS.CocoaTouch"|g'

    命令说明:

    1
    
    find -name '要查找的文件名' | xargs perl -pi -e 's|被替换的字符串|替换后的字符串|g'

    2、修改xib的视图尺寸

    在xib文件上右键,选择“Open As -> Interface Builder – iOS”,用IB模式打开。

    选择xib文件中的根视图(UIView),在属性面板中找到Size选项,将其改为Full iPad Screen.

     现在,你可以有一个iPad版本的xib了。

      重要警告:   1.为了解决对iPAD版本换图片的烦恼,建议大家在iphone的 XIB中  使用 两倍的高清图,
                             这样生成的ipAD 版本的XIB 的图片就是你想要的、、、
                        2. *转好的ipad XIB 界面可能需要微调一些字体等、、、、

  • 相关阅读:
    【Spring学习笔记-MVC-6】SpringMVC 之@RequestBody 接收Json数组对象
    【Spring学习笔记-MVC-1.1--】@PathVariable与@RequestParam、@CookieValue等比较
    【Oracle学习笔记-1】Win7下安装Oracle 10g
    【Oracle学习笔记-3】关于Oracle 10g中各种服务解析
    【前端编程-学习-5】系统加载提示
    【EasyUI学习-3】Easyui tabs入门实践
    【EasyUI学习-2】Easyui Tree的异步加载
    【Hibernate学习笔记-6.1】无连接表的N-1关联(单向)
    ArcGIS 要素合并
    Nginx 链接
  • 原文地址:https://www.cnblogs.com/sunminmin/p/4193425.html
Copyright © 2020-2023  润新知