rclayout icon indicating copy to clipboard operation
rclayout copied to clipboard

性能问题

Open ysemylord opened this issue 7 years ago • 1 comments

使用RCRelativeLayout后,通过开发者工具--显示过渡绘制,发现会导致多出一次绘制次数

ysemylord avatar May 03 '18 15:05 ysemylord

这是由于代码中使用了PorterDuffXfermode实现的圆角方案,因此会多处一次绘制。 目前已知的实现圆角方案有以下几种:

  1. clipPath,没有抗锯齿优化,会导致边缘部分比较粗糙,部分机型上视觉效果较差。
  2. PorterDuffXfermode,这种方案视觉效果较好,但是为了剪裁画面区域不得不多绘制一次。
  3. 直接操作Bitmap,这种方案如果处理不当会引起内存问题,并且只能应用于图片。

基于项目的特性,最终采取的是第 2 种方案,虽然会造成部分性能上的损耗,但基本可以满足大部分的应用场景。

GcsSloop avatar May 22 '18 05:05 GcsSloop