iOS-UIView之drawRect

今天在学习iOS一些简单动画,具体的动画实现是利用CADisplayLink计时器每秒调用60次setNeedsDisplay,接着在UIView里的drawRect中改变某个点的位置利用UIBezierPath绘制曲线。按道理讲,view上面应该只有一条曲线,UIView有个属性是clearsContextBeforeDrawing(默认为YES),即每次绘制之前都会先清理画布上所有的内容。但运行出来的结果是有很多条贝塞尔曲线出现在view上,即每次绘图都没有清除上一次绘制的曲线。

最后将该view的opaque设置为NO,或者将该view的backgroundColor随便设置一个颜色,问题就解决了。具体原因还没找到。。

总结:需要在drawRect中绘制时,一定要先设置该view的opaque或者backgroundColor!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥ios动画全貌。在这里你可以看...
    每天刷两次牙阅读 12,723评论 6 30
  • 一、初始化方法 1、- initWithFrame: UIView *view = [[UIView alloc]...
    默默_David阅读 7,397评论 1 3
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌。在这里你可以看...
    F麦子阅读 10,543评论 5 13
  • 前言 本文只要描述了iOS中的Core Animation(核心动画:隐式动画、显示动画)、贝塞尔曲线、UIVie...
    GitHubPorter阅读 9,017评论 7 11
  • 个人观点,且顺序不代表啥意义 1.食戟之灵第二季 一个吃饭吃到高潮的故事,好吧,毕竟作者是小本子出身。伪后宫吧,整...
    lissettecarlr阅读 4,714评论 0 1

友情链接更多精彩内容