各类常见错误解决

这篇博客汇总了iOS开发过程中遇到的各种错误,包括删除默认viewController和mainstoryboard后的黑屏问题,Assigning to 'id'警告,手势不响应,Xcode的语法高亮和代码提示缺失,flutter混编项目的安装问题,加入第三方文件夹的头文件识别问题,以及多个编译错误和解决方法。同时,还涵盖了cocoapods导入头文件不自动补全,找不到xib文件,Flutter运行报错,UIViewController加载nib文件时的view outlet未设置,删除storyboard后的屏幕黑边,cell样式重定义,链接器找不到库,OC调用C++代码的问题等。
摘要由CSDN通过智能技术生成
1.删除自带的viewController以及mainstoryboard之后黑屏的原因是没有关联新增的界面,

需要在配置文件中取消main界面的关联以及在项目属性中去掉关联并在appdelegate中关联新界面为根视图

self.window = [[UIWindow alloc]initWithFrame:[[UIScreen mainScreen]bounds]];
    self.window.rootViewController = [[SignUpViewController alloc]initWithNibName:@"SignUpViewController" bundle:nil];
    [self.window makeKeyAndVisible];
    
    //- (void)makeKeyWindow;
让当前UIWindow变成keyWindow(主窗口)

//- (void)makeKeyAndVisible; 
让当前UIWindow变成keyWindow,并显示出来
2.警告⚠️Assigning to ‘id’ from incompatible type ‘LoginViewController *__strong’
这个问题在设置代理对象的时候出现的,例如,在init方法里有这样的赋值:

self.loginView.delegate = self;

代理对象要给loginView进行代理。警告出现的原因是代理对象,没有实现被代理对象,也就是loginView的代理协议。
可以在实现文件里面这么改:

@interface LoginViewController()<LoginViewDelegate>

3.不响应手势
一定要设置允许用户交互
    testimageView.userInteractionEnabled = YES;
4.
Implicit conversion of an Objective-C pointer to 'NSError *__autoreleasing  _Nullable * _Nullable' is disallowed with ARC

在error前面加个*
5.Xcode无语法高亮 无代码智能提示 解决方法
~/Library/Developer/Xcode/DerivedData
~/Library/Caches/com.apple.dt.Xcode
把上面两个目录里的文件清掉

然后在xcode里面clean
6.flutter混编项目中:

This app could not be installed at this time.
Could not hardlink copy /Users/zhaoztcorp.21cn.com/Library/Developer/CoreSimulator/Devices/D4B603FF-C86B-470D-A34A-801FE594D4A0/data/Containers/Bundle/Application/9FB7DC3C-7222-4C11-86D0-8FF257A9FF88/TYUserCenter.app to /Users/zhaoztcorp.21cn.com/Library/Developer/CoreSimulator/Devices/D4B603FF-C86B-470D-A34A-801FE594D4A0/data/Library/Caches/com.apple.mobile.installd.staging/temp.eRYfUn/extracted/Payload/TYUserCen

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值