iOS开发的那些坑(持续填坑中)
来源:互联网 发布:网络包工头接单网站 编辑:程序博客网 时间:2024/06/08 16:07
题记
最近有了个app创意,自然想把创意转换为财富——那就要把app做出来。iOS开发以前做过一点,没有深入过。不过对于高手来说,技术神马的都是相通的,那就在实践中强化自己的技术。在这篇文章中,我将记录自己开发过程中遇到的坑,记录一些零散的知识点,文章会不断更新。
正文
1、综合众大神的观点,打算使用纯代码实现这个app,能不用storyboard就不用storyboard。工程刚刚建立完成,我便删掉了工程中的Main.storyboard 和 LaunchScreen.storyboard,然后再程序初始化的AppDelegate的didFinishLaunchingWithOptions函数中实现如下代码:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; self.window = [[UIWindow alloc] init]; UIViewController *tabBarVC = [[XXXTabBarController alloc] init]; self.window.rootViewController = tabBarVC; [self.window makeKeyAndVisible]; return YES;}
但是运行程序的时候会发现程序的top和bottom两侧会有很大的黑色区域(为了对比,我把UIViewController中view的backgroundColor设置成了白色),也就是说程序实际上占用的区域只有中间一部分。尝试在iphone7、7plus、5的设备上运行都是一样的,通过NSLog输出 UIScreen mainScreen].bounds 会发现,输出的width和height分别是320、480,这个值是不对的。继续查看资料,通过把LaunchScreen.storyboard设置回来,问题就解决了。即在项目工程设置中的General>App Icons and launch Images>Launch Screen File设置成项目创建时生成的LaunchScreen.storyboard就可以了。 2、解决Xcode 的files missing from working copy警告。通过默认的工程创建,会有mian.m和APPDelegate类,我喜欢重新安排项目目录。重新安排main.m和AppDelegate类文件的目录后,Xcode会报files missing from working copy警告。这个警告实际上因为版本管理Git引起的,在创建项目之初,我选择了Create Git repository选项。找到了问题的原因,解决起来就好办了,只要在Xcode的Source Control 菜单下进行一下Commit操作就可以了。注意选中警告的文件。
3、在编译工程的时候(尤其是下载而别人的工程),有时候会出现Apple Mach-O Linker Error(: Linker command failed with exit code 1 (use -v to see invocation))错误,但是又找不到具体的错误信息,很难解决这个连接错误。其实详细的错误信息可以在report navigator里找到。在现在xcode 8中,report navigator是8个navigator中最右侧的一个。
0 0
- iOS开发的那些坑(持续填坑中)
- iOS开发——来改掉那些已经过时的方法吧(持续更新中)
- iOS开发的那些坑
- iOS开发的那些坑
- ReactNative开发之我遇到的那些坑(持续更新)
- android开发中那些掉过的坑(持续更新)
- iOS开发之NSURLProtocol的那些坑
- iOS开发中遇到的那些坑
- iOS开发之CFHttpMessageRef的那些坑
- iOS开发 ☞ Masonry的那些坑
- iOS开发之tableHeaderView的那些坑
- 那些曾经踩到的坑(持续更新。。。)
- 那些年我踩过的坑(持续更新)
- 【iOS资源推荐】那些我看过的书,视频,网站,博客(持续更新)
- 【iOS资源推荐】那些我看过的书,视频,网站,博客(持续更新)
- 【iOS资源推荐】那些我看过的书,视频,网站,博客(持续更新)
- iOS遇到的那些事(持续总结并更新)-MickyChiang
- X5 WebKit 的那些坑(持续更新....)
- webdriver设置浏览器大小
- Springmvc异步发送表单数据到JavaBean,并响应JSON文本返回 (14)
- 针对类型转换出错的处理
- 详细说明优先级队列的使用方法
- hdu 2102 A计划-bfs
- iOS开发的那些坑(持续填坑中)
- [C++]读写txt文件和从txt文件中读取数据写入数组中
- 机器学习基础知识整理
- 前端学HTTP之基本认证
- Android System Server进程源码分析 下
- 设计模式->结构型模式->适配器模式
- 框架之Struts2篇----day3.3(配置文件)团队协作(可以理解成package配置)
- 常见的开源协议都有哪些
- es6学习笔记3