iOS 那些坑你遇到了么?(后期持续更新~ ~)
来源:互联网 发布:软件评测师报考 编辑:程序博客网 时间:2024/05/29 09:53
通过在代理方法中截取强制赋值。
2、tableViewCell在初始化的时候宽高默认是320*44.只有在布局的时候才会调整到设置的高度。
解决方法:重写layoutSubviews方法。在layoutSubviews里面重新设置其frame即可。
3、alertview关闭影响了系统其他的动画导致的。要么延迟调用,要么自己做一个alertview。
4、编译时报大量的错误,都是基本数据类型找不到,则可能是该文件头文件未导入。
5、在自定义cell上加了某些东西后 无法获取点击事件
解决办法:
(1)检查是不是控件的用户可交互性(userInteractionEnabled)是否打开,包括子视图和父视图。
(2)检测子视图frame是否超出了父视图范围,可在运行时加断点,查看层级关系,点击Xcode中层级按钮 ,或者设置父视图的layer.masksToBounds = YES,看你点击的部分是不是在父视图范围之外。(3)在cell上加一个与cell相同尺寸的透明view试试。
6、尽量不要在dealloc方法中出现self,此方法中self不稳定,可能胡导致crash。
7、当UICollectionview每行cell的个数大于1时,UICollectionviewLayout的itemSize,宽度根据屏幕适配时要用floor函数向下取整,否则出现意想不到的效果。
(1)如图:
(2)在iPhone 5S和iPhone 6上效果分别如下图:
(3)使用floor()函数对itemWidth处理,如下图:
(4)处理后在iPhone 5S上的效果如下:(iPhone 6效果不变)
8、因为模态(Modal)导致导航错乱的问题
设置情景: 在ViewControllerA中隐藏导航,模态弹出ViewControllerB,Push出ViewControllerC等其他界面均需要显示导航,初步想法是在ViewControllerA的viewWillDisappear中显示导航,但是导致的效果是B、C等界面在出现的过程中A中的导航已经显示出来,这不是我想要的效果。
导致这样的原因是方法的执行时机不同,这里是先执行A的viewWillDisappear,才会执行B、C的viewWillAppear。暂时的解决办法就是将显示导航的操作放在B、C的viewWillAppear中。
更多模态(Modal)相关知识点击这里:iOS模态(Modal)
9、终止定时器要在viewWillDisappear里,不能再dealloc里,否则self释放不掉,dealloc永远不会执行。
10、内存泄漏导致崩溃,控制台只标识lldb,没有任何报错,排查方法:
Product — > Scheme —> Edit Scheme —> Run — > Diagnostics —> 勾选 Zombie Objects,重新运行,控制台会输出导致内存泄漏的代码。
如果你遇到了其他问题,可留言,我会更新到文档里,共勉~~
- iOS 那些坑你遇到了么?(后期持续更新~ ~)
- iOS遇到的那些事(持续总结并更新)-MickyChiang
- 那些年,我们遇到的异常。。。(持续更新)
- ReactNative开发之我遇到的那些坑(持续更新)
- 那些年遇到的坑公司,留给后人斟酌(持续更新)
- 那些坑了我N多时间的问题(持续更新)
- IOS 那些设计模式,持续更新中...
- 那些曾经踩到的坑(持续更新。。。)
- 那些年我踩过的坑(持续更新)
- X5 WebKit 的那些坑(持续更新....)
- 编程那些事儿(持续更新中)
- Android 开发时遇到过的坑(持续更新)
- react-native android 调试 遇到的坑(持续更新)
- 【iOS资源推荐】那些我看过的书,视频,网站,博客(持续更新)
- iOS开发——来改掉那些已经过时的方法吧(持续更新中)
- 【iOS资源推荐】那些我看过的书,视频,网站,博客(持续更新)
- 【iOS资源推荐】那些我看过的书,视频,网站,博客(持续更新)
- ios接入微信SDK的一些坑(后期会陆续更新)
- 图标分享网站
- Android Studio 编译报错“java.lang.OutOfMemoryError: GC overhead limit exceeded”
- 关于laravel框架引入公共目录的方法
- C++ 读取包含空白字符的字符串
- Glaces环境安装教程
- iOS 那些坑你遇到了么?(后期持续更新~ ~)
- MyEclipse 2014的安装和破解
- dubbo启动无法向zookeeper注册
- uri学习之一(uri监听数据变化)
- linux 下多个tomcat共存
- 简单实现如何使用 Socket 类实现面向连接的通信。
- unity 脚本生命周期
- 构建高并发高可用的电商平台架构实践
- ajax输出流工具类