2011-12-14 4 views
0

У меня есть пользовательский вид и в onDraw() метод Я рисую некоторые изображения на холсте в зависимости от некоторых параметров. Но у меня проблема с производительностью, потому что, пока этот вид воспроизводит анимацию вращения, каждый раз вызывается метод onDraw(), и он работает очень медленно. Есть ли способ избежать этого?android view draw performance

+0

вы пытаетесь это на реальном устройстве или на эмуляторе? –

+0

на реальном устройстве, HTC Desire –

+0

Возможно, вам следует изменить все свои изображения на одно изображение (сделайте снимок или что-то еще), это повысит производительность onDraw, нарисуя одно большое изображение –

ответ

0

Как вы реализовали метод onDraw()?

Вы должны использовать canvas.drawBitmap (Bitmap, Matrix, Paint) и только предварительно создать матрицу.

Кроме того, вы можете предотвратить чрезмерное вызывать onDraw, вызвав метод «invalidate()», только когда вы уверены, что есть обновление.