我想绘制一个实时更新的图表(从右边开始).我能想到的最有效的方法是将x [0 .. width-2]中的所有内容复制为1像素,然后在x [width-1]处绘制新值.
我对Android没什么经验,但据我所知,Canvas根本不会对它的内容进行操作.我每次都需要重画整个画面吗?这涉及缩放和平滑,所以我担心它会很慢.
我应该绘制一个字节[] []然后使用它绘制到屏幕上(每次移动我的缓冲区内容)?
只是一个想法,您可能已经考虑过,但我不会移动缓冲区的内容 - 我只是尝试像循环缓冲区一样使用它。保留当前列的索引,一旦再次绕到最左边的列,您可以分两段绘制到目的地 - 当前列右侧的内容,然后是左侧的内容,包括最近填充的列。这样,您就不必移动任何内容,并且每次屏幕刷新只是两个片段的两个位图副本。如果那一点太慢,您仍然可以将它们绘制到第二个屏幕外缓冲区中,然后将整个内容一次性传输到屏幕上。当然,到屏幕上的一个大块传输相当快,不是吗?
归档时间: |
|
查看次数: |
1899 次 |
最近记录: |