[小细节,大BUG] 6.问题描述:当从Plist文件加载数据,放入到tableView中展示时,有时有数据,有时又没有数据。这是为什么呢?相信很多大牛都想到了:我们一般将加载的数据,转换成模型,放入到数组中去。然后根据数组,动态的进行数据展示。结果错误就在此:对数组的引用使用了weak,所以造成了数据有时丢失的情况。那么有个细节不知道各位有没有注意到,为什么有时有,有时没有呢?这就关系到XCODE对僵尸对象的处理了,详细介绍请看本博客中的《OC内存管理--zombie对象

[小细节,大BUG] 5.NSRunLoop细节引发的问题:案例说明:当做“图片轮播器”的时候,使用NSTimer *timer = [NSTimer timerWithTimeInterval: invocation:repeates:];进行定时播放,然而有个问题,就是当与其同处界面的tableView被上下拉动时,轮播器停止滚动,而当停止后,轮播器加速滚动,这是什么原因呢?主要原因是因为在timer与tableView同时执行情况,当拖动tableView时,runloop进入UITrackingRunLoopModes模式下,不会处理定时事件,此时timer不能被处理,所以此时将timer加入到NSRunLoopCommonModes模式(addTimer forMode);即[[NSRunLoop currentRunLoop] addTimer:timer forMode:NSRunLoopCommonModes];

[小细节,大BUG] 4.当你使用storyboard添加一个scrollView时,发现在运行时怎么也无法滚动。这时候就我们能考虑到的因素有哪些呢?第一,storyboard,中autolayout是否勾选去掉(可能性最大);第二,scrollEnabled是否设置为yes(可能性小);第三,userInteractionEnabled,是否设置为yes(可能性最小);第四,contentSize未设置(一般都不会忘)

[小细节,大BUG]  3.另外一个有意思的BUG:当在一个视图中添加UIButton时,发现根本无法点击.此时,你会想到怎样解决吗?检查父控件的userInteractionEnabled?检查按钮的enabled?或者其他的?对,我也这么做了,可最后我被这个BUG玩了,最终经过排查,发现其父控件的frame为CGRectZero!!!这又跟IOS事件传递机制与响应者链有关系.这个错误是在事件传递的过程中出现的问题:要知道事件传递是由UIApplication-->UIWindow....一直到最顶层的子控件,找到最合适的控件来响应,而所谓的合适满足两个条件:一,自己是否能够响应? 二,触摸点是否再自己身上.然后针对子控件进行遍历,重复以上两个步骤.相信到这里大家都明白了吧,就是在第二个条件出现了问题.触摸点不在其父控件身上.所以事件根本没有传递到按钮这里来,造成不能响应的BUG.

[小细节,大BUG]  2.在IOS开发中,大部分人都了解了加载UIImage时,使用[ UIImage imageNamed:]和[UIImage imageWithContentOfFile : ]的主要区别,即前者会缓存图片,造成手机内存飙升而出现应用闪退的现象。后者并不缓存图片。然而,当有人去试着将前者改为后者时,造成了程序崩溃?经排查,原因是因为当构造图象地址时,图片名称的大小写问题.imageNamed:对于图片名称的大小写并不敏感,而imageWithContentOfFile:则严格要求路径的大小写正确.

[小细节,大BUG]  1. 在不久前,一个朋友出现了这样一个BUG:当UITableView加载cell的时候,自定义的cell,怎么显示,里面的文字总是显示不完全(注意,文字不长).然后,我帮忙给看了下,甚至把在storyBoard中将cell的相关属性都试了下,虽然可以解决,但是效果不理想.最终经过排查,终于发现问题所在:当自定义cell时,因为需要布局子控件,所以他重写了layoutSubviews方法,然而在此方法中没有调用[super layoutSubviews],所以造成了布局混乱.再次引以为戒.

(为方便查看,进行倒序更新。。。)

[小细节,大BUG]记录一些小问题引起的大BUG(长期更新....)的更多相关文章

  1. 微信小程序语音识别开发过程记录 微信小程序silk转mp3 silk转wav 以及ffmpeg使用

    说说最近在开发微信小程序语音识别遇到的问题吧 最先使用微信小程序录音控件可以拿到silk格式,后来微信官方又支持mp3格式了 但是我们拿到这些格式以后,都还不能直接使用,做语音识别,因为目前百度的语音 ...

  2. [20171120]bash使用here documents的一个小细节.txt

    [20171120]bash使用here documents的一个小细节.txt --//昨天看bash文档,,发现一些小细节,做一个记录,就是EOF加引号的问题. command <<' ...

  3. 微信小程序bug记录与解决

    微信小程序bug记录 textarea textarea在模拟器上没有padding,可是在真机上会自带padding,而且在外部改不了,并且在安卓和IOS上padding还不一样 第一张图是在开发工 ...

  4. web前端体系-了解前端,深入前端,架构前端,再看前端。大体系-知识-小细节

    1.了解前端,深入前端,架构前端,再看前端.大体系-知识-小细节 个人认为:前端发展最终的导向是前端工程化,智能化,模块化,组件化,层次化. 2.面试第一关:理论知识. 2-1.http标准 2-2. ...

  5. 手摸手教你如何在 Python 编码中做到小细节大优化

    手摸手教你如何在 Python 编码中做到小细节大优化 在列表里计数 """ 在列表里计数,使用 Python 原生函数计数要快很多,所以尽量使用原生函数来计算. &qu ...

  6. ASP.NET MVC 自定义路由中几个需要注意的小细节

    本文主要记录在ASP.NET MVC自定义路由时,一个需要注意的参数设置小细节. 举例来说,就是在访问 http://localhost/Home/About/arg1/arg2/arg3 这样的自定 ...

  7. css小细节罗列

    有空时候把一些常见可能不是每个人都知道的css小细节总结了下,共勉. 1.line-height 众多周知,line-height是行高的意思,我们时常会使用类似line-height:24px;这样 ...

  8. HTML 标签小细节

    简书地址:https://www.jianshu.com/p/03a23aa28a34 今天重新学习了一下HTML中标签的用法,补充并记录一下自己新学到的知识. a中的href href Contai ...

  9. ArrayList中的一些小细节@JDK8

    ArrayList中的一些小细节@JDK8 protected transient int modCount = 0; 该变量用于记录ArrayList的版本号,不可被序列化,每次对ArrayList ...

随机推荐

  1. 【poj2342】 Anniversary party

    http://poj.org/problem?id=2342 (题目链接) 题意 没有上司的舞会... Solution 树形dp入门题. dp[i][1]表示第i个节点的子树当节点i去时的最大值,d ...

  2. unix/linux进程详解

    技术分享 启动新进程 stdlib.hintsystem(const char *string)whichequals to "sh -c string" 替换进程映像unistd ...

  3. 轻量级应用开发之(03)UIVIew

    本文是我在学习OC中的一些经验总结,在学习中总结了常用的Mac技巧,欢迎群友对本文提出意见,如有问题请联系我. 一 九宫格-购物车 通过文件加载数据: NSString * file = [[NSBu ...

  4. MongoDB之bson的介绍

    MongoDB之bson的介绍 1. 什么是bson BSON是一种类json的一种二进制形式的存储格式,简称Binary JSON,它和JSON一样,支持内嵌的文档对象和数组对象,但是BSON有JS ...

  5. Java初学(一)

    一.初识Java 1.JVM:Java跨平台是基于JVM(Java虚拟机)的,JVM不是跨平台的,针对不同平台有对应的JVM软件 2.JRE:Java开发出来的软件如果要运行还需要在环境中安装JRE( ...

  6. P问题、NP问题、NPC问题、NP难问题的概念

    P问题.NP问题.NPC问题.NP难问题的概念 离入职尚有几天时间,闲来无事,将大家常见却又很容易搞糊涂的几个概念进行整理,希望对大家有所帮助.你会经常看到网上出现“这怎么做,这不是NP问题吗”.“这 ...

  7. 转:Java NIO系列教程(八) DatagramChannel

    Java NIO中的DatagramChannel是一个能收发UDP包的通道.因为UDP是无连接的网络协议,所以不能像其它通道那样读取和写入.它发送和接收的是数据包. 打开 DatagramChann ...

  8. OpenXML_导入Excel到数据库(转)

    (1).实现功能:通过前台选择.xlsx文件的Excel,将其文件转化为DataTable和List集合 (2).开发环境:Window7旗舰版+vs2013+Mvc4.0 (2).在使用中需要用到的 ...

  9. 如何设置通过ip访问数据库

    文章转自:http://blog.163.com/wz_pk007/blog/static/17062705020119242440713/ 问题:mysql只能用localhost或127.0.0. ...

  10. 【原创】express3.4.8源码解析之路由中间件

    前言 注意:旧文章转成markdown格式. 跟大家聊一个中间件,叫做路由中间件,它并非是connect中内置的中间件,而是在express中集成进去的. 显而易见,该中间件的用途就是 ------ ...