如果您在Xcode 5上打开Xcode 4.x项目,然后在Interface Builder上打开一个xib,您将收到一条警告:
注意:我只有强制iOS7外观的问题,我仍然关闭自动布局.
然后我不小心点击了"Alway Upgrade",因此Xcode会自动将我的所有xib升级到Xcode 5和iOS7.但我使用Xcode 4.x parallel并且当我在Xcode 5中意外打开它时切换回所有xib非常烦人.
在XCode 5界面构建器中打开之前:
在XCode 5界面构建器中打开后:
我在Xcode和Google上搜索了解决这个"功能"的方法,但我仍然没有运气.
使用以下方法,我立即在iOS 5上获得正确的顺序,但在设置中切换后,在重新启动应用程序后(关闭设置后),iOS 6和7上的顺序没有变化.
BOOL firstNameFirst = NO;
if (IOS_VERSION>=7) {
firstNameFirst = (ABPersonGetCompositeNameFormatForRecord(NULL)==kABPersonCompositeNameFormatFirstNameFirst);
}else{
firstNameFirst = (ABPersonGetCompositeNameFormat() == kABPersonCompositeNameFormatFirstNameFirst);
}
Run Code Online (Sandbox Code Playgroud)
我错过了什么?
编辑:这个bool应该存储用户默认顺序,所以我可以订购名字和姓氏字符串,并按照他在iPhone设置中设置的方式向用户显示.
EDIT2:在IOS_VERSION
宏观作品完美,我检查了他们使用断点,但无论设置/邮件,通讯录,日历/通讯录/显示顺序的设置是,我总是YES
对firstNameFirst
的价值