iOS开发中遇到问题及解决方案

前言

总遇到一些问题,当时上网找到方案,解决了。。然后再遇到就再上网。。既然这样,整理一下吧~

1.Xcode 11新建项目,在iOS13中

黑屏????

你看,项目中多了一个新类(在appdelegate下面)~~ app多了一个分屏的玩意。这个类就是干这个的。你以前在appdelgate里面的window没了~ 所以,大兄弟。。挪移过来,放在这个类下面吧~  当然了。。原来的不要删除,因为这个只支持iOS13~

启动广告图加载gg???

看上个问题。。还是这个scen类搞的鬼。坏的很~ 干掉吧~  删了这两个类,去appdelegate里面,下面,把这个鬼东西的生命周期回调的两个方法删除~  还有info.plist,里面也有这个鬼东西。。一样去干掉吧~ 我不想在截图了。。

2.LaunchScreen加载出来空白

把你的图片 丢在根目录下~

3.github clone速度过慢 下载慢

Mac 终端

sudo dscacheutil -flushcache

4.Xcode 11新建项目 使用 Assets 中的 LaunchImage

由于apple 现在推荐使用 launchScreen,所以现在~ 

只有两个。。没有原先的Assets 给你选择了。。但是又想使用LaunchImage,  怎么办???

方法:第一步 先将LaunchScreen File 设置为空

第二步  关闭 LaunchScreen 的这一项设置

第三步,在Setting 中,设置使用LaunchImage

另外,如果启动图白屏,也可以换为LaunchImage 解决

5.计算label文本高度

UILabel *titleLabel = [UILabel new];
            titleLabel.font = [UIFont systemFontOfSize:17 weight:UIFontWeightBold];
            titleLabel.numberOfLines = 0;
            titleLabel.textAlignment = NSTextAlignmentLeft;
            titleLabel.text = [NSString stringWithFormat:@"%@%@", self.label_data.label_name , self.title];
            titleHeight = [titleLabel sizeThatFits:maxSize].height;

maxSiZe  就是你允许文本最大的size  

6.TableView 刷新数据,导致数组越界Crash

这个有两种情况,①没有把数据源的remove写在了网络请求成功的回调里。导致,数据源被remove,但是用户的操作触发了 cellForRow ,直接gg。。 ②remove写在了网络请求的成功回调里,但是从remove 到数据源再次被赋值,中间间隔较长,导致用户触发cellForRow的时候,无数据源可用,直接GG~ 

解决方案  尽量不使用remove, 而是采用 直接赋值的操作, 可以采用一个临时可变数组/字典,数据整理完成后,直接 dataSource = tempDataSource.mutableCopy。  至于,为什么是mutableCopy 而不是copy,自行百度两者区别。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值