iOS开发:常见问题及解决方案(持续更新...)

来源:互联网 发布:ubuntu命令有多少 编辑:程序博客网 时间:2024/05/16 05:43

 

====================================================================================

 *********************************************************************************************************************

====================================================================================

========================错误分类:固件相关============================================

====================================================================================

 *********************************************************************************************************************

====================================================================================

1、错误提示:iPhone/iPod Touch: application executable is missing a required architecture. At least one of the following architecture(s) must be present: armv6 (-19033)

解决方法:Target->Build Settings->Architectures->Standard(armv7)->Other...->删掉原来的内容,然后逐个添加"armv6"和"armv7"(注意顺序);Build Active Architecture Only选择Yes

2、错误提示:安装到老的iOS设备出错--->发生未知错误(0xE8003FFE)

解决方法:ipa不支持老的设备(armv6),在打包的时候做如下改动:Target->Build Settings->Architectures->Standard(armv7)->Other...->删掉原来的内容,然后逐个添加"armv6"和"armv7"(注意顺序);Build Active Architecture Only选择Yes

3、错误提示:warning: iPhone apps with a deployment target lower than 4.3 should include an armv6 architecture (current IPHONEOS_DEPLOYMENT_TARGET = "4.0", ARCHS = "armv7").

解决方法:iOS版本低于4.3,应该包含armv6,解决方法同上,注意armv6和armv7的顺序

====================================================================================

 

 

 

 

====================================================================================

 *********************************************************************************************************************

====================================================================================

========================错误分类:界面显示=============================================

====================================================================================

 *********************************************************************************************************************

====================================================================================

iOS开发问题:UIWindow中addSubView后UIView不能旋转

 因为交互的要求,跑在ipad上的程序必须以横版且仅以横版的模式运行。按说这应该是比较简单的事情:在plist或者工程设置中设一下程序起始方向和所支持的方向(Landscape),同时再在对应的ViewController中处理一下shouldAutorotateToInterfaceOrientation函数即可。但是却出了如下的问题:

        在UIWindow中添加了两个ViewController,并显示后一个ViewController的视图,结果视图并没有被旋转成横版,仍旧按照竖版来显示。当然也有人给出了解决方案:给UIWindow设置一个rootViewController,尔后添加的所有ViewController都以rootViewController的subview形式添加。就连苹果官方的的Q&A也推荐这种做法:  《Why won’t my UIViewController rotate with the device?》至于原因,官方的Q&A讲的很简单:如果往一个UIWindow里面添加了两个以上的view,那么后面添加的view就会收不到旋转的事件,于是无法正常调整视图的方向 —– 只有第一个加入到UIWindow的view才会进行旋转。

相关问题的讨论:

http://stackoverflow.com/questions/1632117/iphone-in-landscape-only-after-first-addsubview-uitableviewcontroller-doesnt

http://stackoverflow.com/questions/2508630/orientation-in-a-uiview-added-to-a-uiwindow

http://stackoverflow.com/questions/1484799/only-first-uiview-added-view-addsubview-shows-correct-orientation

http://stackoverflow.com/questions/1371007/difficulty-with-apps-with-a-forced-landscape-orientation

====================================================================================

 

====================================================================================

 *********************************************************************************************************************

====================================================================================

========================错误分类:Cocos2D============================================

====================================================================================

 *********************************************************************************************************************

====================================================================================

cocos2d-2.0-x-2.0.2

错误提示:error C2440: “类型转换”: 无法从“void (__thiscall MoveController::* )(cocos2d::CCTime)”转换为“cocos2d::SEL_SCHEDULE”
1>          指向成员的指针有不同的表示形式;无法在它们之间进行类型转换

解决方法:cocos2d-2.0-x-2.0.2的schedule有点改变,目标方法的参数不是ccTime 而是float,如:原来_keepDoing(CCTime dt),改为_keepDoing(float dt)即可

xcode报错,截图:

出现这个错误的原因是在.h文件里声明了一个方法,但是没有在相应的.cpp文件里面实现。(截图中选中的方法未实现)

解决方法:在响应的.cpp文件里声明一下

====================================================================================

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 一般纳税人没有进项发票怎么办 汽车购买发票丢了怎么办 购买房子的发票丢了怎么办 购买的二手房发票丢失怎么办 购买空调时的发票丢失怎么办 发票购票本丢了怎么办 留学中介费贵了怎么办 车祸伤者不肯出院怎么办 增值税普通发票发票联丢失怎么办 纳税识别号错了怎么办 电子发票税号填写错误怎么办 发票抬头名称写错了怎么办 滴滴发票抬头写错了怎么办 普票抬头开错了怎么办 发票号码打错了怎么办 个人税票开错了怎么办 普票地址错了怎么办 专票税率开高了怎么办 专票税率开错了怎么办 发票姓名写错了怎么办 首付发票姓名写错怎么办 一般纳税人税率开错了怎么办 电子税票开错了怎么办 税率是6%开成3%怎么办 医院收费收错了怎么办 发票少打一个字怎么办 增值税发票抬头错了一个字怎么办 暂估入账跨年了怎么办 电子发票写错了怎么办 发票纳税人识别号写错了怎么办 电子发票忘填邮箱怎么办 公司名跟发票抬头不一样怎么办 买空调不给发票怎么办 卖苹果手机没有发票怎么办 刷机字库刷坏了怎么办 维棠不能播放视频怎么办 m3u8卡顿的厉害怎么办 下载了PDF不能用怎么办 pdf格式在电脑打不开怎么办 电脑上arm格式打不开怎么办 极米桌面无响应怎么办