Quantcast
Channel: Rainbird的个人博客 » IOS5
Viewing all articles
Browse latest Browse all 8

关于Xcode4.3+禁用UseAutolayout

$
0
0

xcode4.3及以上横空出世一个东东:UseAutolayout。
这个东东是在iOS6或者OSX 10.8上实现控件自动定位。是为了节省代码量的。好是好,只是现在写的东东都要兼容iOS5和10.7以下的系统。如果用了这东东,就没法在iOS6和10.8以下的系统上运行写的东东了。怎么取消这个东东呢?很简单,看图说话:
1.选中xib文件

2.在File Inspector那找到Use Auto Layout取消选中

然后就完事儿了

但是,怎么能完全禁用呢?
在下面两个路径下

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates/File Templates/User Interface/
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates/File Templates/Cocoa Touch

这么弄一下:

grep UseAutolayout * -R

是不是发现一堆的xib文件里,有要找的东东:

Application.xctemplate/iPad/___FILEBASENAME___.xib:     <bool key="IBDocument.UseAutolayout">NO</bool>
Application.xctemplate/iPhone/___FILEBASENAME___.xib:       <bool key="IBDocument.UseAutolayout">NO</bool>
Empty.xctemplate/iPad/___FILEBASENAME___.xib:       <bool key="IBDocument.UseAutolayout">NO</bool>
Empty.xctemplate/iPhone/___FILEBASENAME___.xib:     <bool key="IBDocument.UseAutolayout">NO</bool>
View.xctemplate/iPad/___FILEBASENAME___.xib:        <bool key="IBDocument.UseAutolayout">NO</bool>
View.xctemplate/iPhone/___FILEBASENAME___.xib:      <bool key="IBDocument.UseAutolayout">NO</bool>
Window.xctemplate/iPad/___FILEBASENAME___.xib:      <bool key="IBDocument.UseAutolayout">NO</bool>
Window.xctemplate/iPhone/___FILEBASENAME___.xib:        <bool key="IBDocument.UseAutolayout">NO</bool>

就是改这些文件喽。直接一句话搞定:

sudo find . -name *.xib -exec sed -i '' -e '/UseAutolayout/{s/YES/NO/;}' {} \;

ok,这下真的清净了。。
改回来的话,也简单,YES和NO交换一下位置就可以了

sudo find . -name *.xib -exec sed -i '' -e '/UseAutolayout/{s/NO/YES/;}' {} \;

不用怀疑,以上命令实时生效,可以去xcode看效果了。

参考资料:
Arggh… Xcode 4.3 Auto Layout is ON By Default?! How to Turn Off Auto Layout…
how to disable auto layout by default for xcode 4.5?


Viewing all articles
Browse latest Browse all 8

Latest Images

Trending Articles





Latest Images