安卓中自定义控件心得(1)—选用SurfaceView还是View问题

问题:在自定义控件中,我们可以集成view或者SurfaceView,我们什么时候使用View,什么时候使用SurfaceView呢?

View:
    使用情景:如果没有动态效果,或者动画效果比较简单,使用View最合适不过了
       线程:在主线程中绘制,所以在不影响UI线程的情况下比较适用。

假如我们的自定义控件有连续不断的动画,这样就会比较频繁的占用主线程,当我们再做其在主线中的UI操作时势必会影响,轻则出现卡顿,重则出现ANR,那么我们就要用SurfaceView了。

   SurfaceView:
      使用场景:有时间连续的动画效果
         线程:SurfaceView的绘制,我们可以在非UI线程中进行,我们可以控制绘制的帧率,最重要的是不影响主线程的UI操作等。

总结:

被动操作多的情况,或许有少许动画,但是不会长时间的动画,我们用View就行了,但是有长时间持续动画的场景,我们需要使用SurfaceView来进行绘制。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值