2.23日bug

  1. BUG,导航栏多下来一截
//默认为YES,当你改为NO后,就会多出一截,每个用了同一个导航栏的控制器都会多出一截.
self.navigationController.navigationBar.translucent = YES;
  1. 调用tableView的setEditing方法,会默认走editingStyleForRowAtIndexPath的代理方法
解决办法:设置tableView允许设置多选,这样调用setEditng时就不会走那些代理方法了.
self.mainTableView.allowsMultipleSelectionDuringEditing = YES;
  1. 转:Assertion failure in -[UITableView _configureCellForDisplay:forIndexPath:]程序奔溃,在网上查了下,说是cell那个创建方法返回为nil,但是我好好的写好了返回cell.最后发现是因为这个cell未注册,也相当于变相的未返回.

2.23日bug_第1张图片
文件连接出错.png
  1. ** 今天遇到一个很奇葩的问题,直接从注册登录时直接从后台那边取得用户id使用setObject方法存在userDefault中,如果后台返回的类型是int,系统会自动转为NSNumber类型的对象.然后在比较用户id的时候直接去通过isqeualToString看到两个明显是一样的id就是不走相等的方法.原因就是存在userDefault中的不是NSString类型的.以后一定要注意. **困扰了很久,后台传的数据类型一定要好好的做判断.

后台传递的数据有时候是这样的** "4" ,有时候是这样的数字 4 **,前面会转化成NSString类型后面的则是基本数据类型,系统会转化为NSNumber类型,(给控件赋值时需要手动转化),不然会发生莫名其妙的崩溃,你还找不到原因.

2.23日bug_第2张图片
bug崩溃图 ![后台数据图](http://upload-images.jianshu.io/upload_images/2481968-eb0527497931d23d.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

代码如下:

@property (nonatomic, strong) NSString *allMarathonTime;

self.allMarathonTime = responseObject[@"allMarathonTime"];

IMAlterCell.minpaceLabel.text= self.allMarathonTime;

找到原因是因为这个转换为NSNumber类型你用NSString接受,所以类型不对,将allMarathonTime换为NSNumber类型.

你可能感兴趣的:(2.23日bug)