2015年7月工作经验总结

1.Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSURL initFileURLWithPath:]: nil string parameter

NSURL取得的地址和NSRUL的string内容形式一样,但是在使用的时候NSURL和NSString是有区别的,NSRUL前面带有file:\\,而NSString没有这些东西,所有在做nsdata数据存储的时候需要注意

2.CGImageRelease(cgImage)在使用的时候注意release掉

3. __weak typeof(self ) welf = self,避免在多线程或者block里面被循环引用,导致内存不能释放掉

4.图形绘制的时候需要已end方法结束

5.在做图形处理或者大量数据处理的时候,需要把这些处理放后台操作,起子线程来完成,而把需要在UI界面展示的时候放在主线程来做

6.在做视图控制器的时候,可以在视图控制器里面加一个调度器,利用这个调度器去管理需要处理的各种方法

7.封装方法的时候,需要打破那种一个方法就完成功能的思想,把方法拆分,方法包含子方法,子方法复用

8.碰到需要逻辑处理的地方,逻辑的优先做,比较节省资源,逻辑处理完成后才开始做其他消耗资源的处理,避免先处理资源,最后发现逻辑判断后该资源无效,从而降低了运行效率

9.在运用点击事件的时候,可以在点击事件的方法里面添加代理方法,然后代理会在另一个对象(或者控制器里面)执行,从而达到这个控件控制另一个对象的响应事件

  • -(BOOL) isKindOfClass: classObj 用来判断是否是某个类或其子类的实例
  • -(BOOL) isMemberOfClass: classObj 用来判断是否是某个类的实例
  • -(BOOL) respondsToSelector: selector 用来判断是否有以某个名字命名的方法(被封装在一个selector的对象里传递)
  • +(BOOL) instancesRespondToSelector: selector 用来判断实例是否有以某个名字命名的方法. 和上面一个不同之处在于, 前面这个方法可以用在实例和类上,而此方法只能用在类上.
  • -(id) performSelector: selector

     

    SEL sel = @selector (start:) ; // 指定action  

    if ([obj respondsToSelector:sel]) 

    { //判断该对象是否有相应的方法  

    [obj performSelector:sel withObject:self]; //调用选择器方法  

    使用[[UIApplication sharedApplication] keyWindow]查找应用程序的主窗口对象


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值