iOSProgramming: The Big Nerd Ranch Guide (4th Edition) 阅读笔记-关于 View 的 Redrawing 和 Run Loop

关于View Redrawing Run Loop

  • application 启动后,它会开始一个 run loop 用以监听如触摸一类的事件。当事件触发时,run loop 会寻找合适的处理事件方法,这个处理方法又会调用其他方法来处理,一旦所有方法被执行完毕,控制权会被交还给 run loop
  • run loop 重新获得控制权后,它会检查一个名为 dirty list 的列表,其中包含需要重新绘制的 view 。然后 run loop 会在整个 hierarchy 中的 view 被重新叠加在一起前,发送 drawRect: 消息给 dirty list 中的 view
  • 需要优化的部分(以便保持界面随时可响应):
    • 只重新渲染必要的 view
    • 每个 event 只发送一次 drawRect:  消息
    • run loop 的最后批量处理需要重绘的 view 以避免不必要的重复重绘
  • 当完成了对事件的响应,并将控制权交还给 run loop 后,若该 view 发生了改变,则还需要将该 view 加入 dirty list。原生的 view 会自动进行这项工作,而自定义的 view 则需要手动向它自身发送 setNeedDisplay 消息。
  • 可选的优化方法(不常用):
    • 通过发送 setNeedsDisplayInRect: 消息,只标记 view 的一部分需要重绘。
    • 该方法比较复杂且对性能没有显著提升,因此除非重绘过程明显拖慢了 app ,否则一般不使用。

 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
《Android编程:The Big Nerd Ranch指南(第5版)》是一本针对Android编程的权威指南。这本书由Phillips、Stewart和Marsicano三位经验丰富的作者撰写,并由Big Nerd Ranch出版,对于想要学习和掌握Android编程的读者来说是一本必备的参考书。 这本书的第5版是一本全面更新和改进的指南,以帮助读者掌握最新的Android编程技术。它深入介绍了Android的核心概念和最佳实践,从而帮助读者全面了解Android应用的开发过程。 这本书以互动式的方式逐步引导读者进行Android应用开发,从创建一个简单的"Hello World"应用开始,逐渐深入介绍不同方面的开发技术,包括界面设计、数据存储和管理、网络通信、多媒体和设备功能等。 它采用了清晰明了的语言和丰富的示例代码,帮助读者理解和实践各种概念和技术。此外,这本书还通过挑战性练习和应用案例来培养读者的实际编程能力和解决问题的能力。 该书还引入了与现代开发实践相关的最新主题,例如响应式编程、单元测试和持续集成等。这些主题使读者能够更好地开发和维护高质量的Android应用。 总的来说,《Android编程:The Big Nerd Ranch指南(第5版)》是一本重要的Android编程指南,对于想要学习和应用这一技术的读者来说具有很高的实用价值。无论是初学者还是有经验的开发者,都可以通过这本书提供的深入理论和实践指导,加强他们的Android编程技能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值