250.判断字符串中是否含有某一字符
if([roadTitleLab.text rangeOfString:@"qingjoin"].location !=NSNotFound) //_roaldSearchText { NSLog(@"yes"); } else { NSLog(@"no"); }
251.如果存在如:不同的segment展现同一种内容,但其显示数据方式存在差异,且这种差异可以判断时,通常在网络请求返回的参数中可以有鉴别这种判断的key值,这时最好在获取网络请求参数的类中以key值做出判断。
例:
else if (self.segmented.selectedSegmentIndex == 0){ DetailedOfInteractionViewController * detailed = [MyUtil getViewControllerWithIdentifier:@"detailed" storyboardName:@"Interaction"]; detailed.theQuestion = self.questionInfo[indexPath.row]; // detailed.isMyQuestions = NO; //判断childId和账号登录时的childId是否相同,如果相同就表示是自己回答的问题,不相同就不是 NSString * childId = self.questionInfo[indexPath.row][@"childId"]; NSString * myChildId = [MyUtil getObjectForKey:DATA_LOGIN_CHILDID]; if ([childId isEqualToString:myChildId]) { detailed.isMyQuestions = YES; }else{ detailed.isMyQuestions = NO; }
252.reuseIdentifier,实际上可以理解为,只是作为tableView的一个重用标识,作记号用,并不是说一定要找到某一处标识过相同字符的控件来调用不可,只是同类的标识而已
253.重用机制调用的就是dequeueReusableCellWithIdentifier这个方法
254.Talk is cheap. Show me the code.
255.“在多写代码的同时,我们也要注意不要”重复造轮子”,尽量保证每次写的代码都能具有复用性。在代码结构因为业务需求需要变更时,及时重构,在不要留下技术债的同时,我们也要多思考如何设计应用架构,能够保证满足灵活多变的产品需求。
在多次重构和思考的过程中,我们就会慢慢积累出一类问题的“最佳实践”方式,成为自己宝贵的经验。”
256.修改textField的placeholder字体的颜色和大小
textField.placeholder = @"username is in here!"; [textField setValue:[UIColor redColor] forKeyPath:@"_placeholderLabel.textColor"]; [textField setValue:[UIFont boldSystemFontOfSize:16] forKeyPath:@"_placeholderLabel.font"];
257.用来隐藏navigationBar
self.navigationController.navigationBarHidden = YES;
258.单一的点击操作其实设不设置delegate为self都是一样的
259.tableView的cell里隐藏图片直接设置hidden的bool值就可以了,不用在cell类里重新写方法
260.设置button的selected之后,要把button类型改为custom自定义的
261.质量与速度不可得兼吗,我觉得并不是,冲要条件是时间。事前做好准备,便可兼顾。
262.在有scrollView的前提下,设置屏幕居中,要以scrollView为参照物,而不是view
263.git冲突的时候=====下面是别人的,head到=====这里面是自己的
264.关于静态tableView,所谓的静态就是指不通过代码的方式来创建,主要是通过storyboard可视化配置。
265.在init里初始化,比didLoad里靠谱点
266.去除NavigationBar下面的线
self.navigationController.navigationBar.barStyle = UIBaselineAdjustmentNone;
267.代码规范:else前后都有空格
268.count是数量,自然是从1开始,而row之类的是下标,自然是从0开始的,不要加错了。比如:array.count +2,array里面有3个元素,那么,3+2就是5, 而array.count+2 == indexPath.row的时候,左边表示5,而右边表示5的时候其下标恰恰是4(因为从0开始计算),所以就会造成一个计算上的误差,这点需要注意
269.如果在进行网络请求时tableView界面突然崩掉并且意外断点没有指向任何错误处,很可能是在cell中取值赋值时出了问题,比如讲一个字典直接当成数组的值赋值给某个字符串
270.计算label自适应cell高度的时候,网络请求所得到的值记得要通过数组传递过去计算字符串的高度,不要传成字典,这样计算的是字典的高度
271.tableView的cell的单选效果,几句代码就ok,网上的方法都太垃圾了
网友评论