Android 自定义 View 性能

标签 android view

情况是这样的 - 我的根布局是 ScrollView - 布局中嵌入了具有多个绘图操作的自定义 View 我的问题是,如果布局被滚动,则 customview.ondraw() 被多次调用。由于 ondraw() 中有很多操作,我的性能受到了影响。

最好的策略是什么?

最佳答案

请参阅有关 View.setDrawingCacheEnabled() 的文档。请注意,您必须在 onDraw 实现中调用 getDrawingCache(),如果 getDrawingCache() 返回非空值,则绘制返回的位图。我不确定 ScrollView 是否会自动调用 setDrawingCacheEnabled。您将不得不尝试并找出答案。我认为是的;但您仍然需要在 onDraw 例程中调用 getDrawingCache()。

这会处理非硬件加速情况。

对于硬件加速 View ,请参阅 setLayerType 的文档。缓存硬件加速 View 实际上提供了性能改进远非假设,因此请谨慎行事。

关于Android 自定义 View 性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14012638/

相关文章:

java - 错误膨胀类...(CardView)

Cakephp 2 - 检查用户是否登录 View

javascript - Ember 。在您自己的 View 中使用内置 View

python - django中的调度用于什么?

php - 在php中获取json对象而不是json数组

ios - 黑屏 - superview 在 vi​​ewWillAppear 中为 nil

Androidmanifest xml 不存在或根标签不正确

Android:Google Drive API - 从未调用过 Resultcallback

android - 唤醒锁 CPU 速度

java - MX Player 打开而不是通过 Intent 播放视频