iOS开发的那些坑(持续填坑中)

本文分享了iOS应用开发过程中的实践经验,包括解决程序显示不全的问题、消除Xcode版本控制警告以及处理编译错误的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


题记

        最近有了个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中最右侧的一个。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值