canvas教程

android surfaceview里onTouchEvent 画图闪屏是怎么回事?

字号+ 作者:H5之家 来源:H5之家 2017-11-20 11:04 我要评论( )

下面是主要代码:publicclassGameSurfaceviewextendsSurfaceViewimplementsSurfaceHolder.Callback{.......

下面是主要代码:
public class GameSurfaceview extends SurfaceView implements
SurfaceHolder.Callback {
........................................... public boolean onTouchEvent(MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
int x = getIndex(event.getX());
int y = getIndex(event.getY());
            Canvas canvas=holder.lockCanvas();
            canvas.drawBitmap(blackchess, x,y,paint);
            holder.unlockCanvasAndPost(canvas);
} return super.onTouchEvent(event);
}
...............................

点击屏幕时总是会黑屏  当再次点击时才会 回复正常 然后再点击 又会黑屏............

解决方案 »

  •   Canvas canvas=holder.lockCanvas();
       canvas.drawBitmap(blackchess, x,y,paint);
       holder.unlockCanvasAndPost(canvas);
    把画图抽取个draw 方法,放到线程中,你的是每点一次刷一次屏幕,如果放到线程中就不停的刷,就不会这样了!

      

  • 类似问题 »

     

    1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章
    • Canvas开篇之drawBitmap方法讲解

      Canvas开篇之drawBitmap方法讲解

      2017-11-20 10:13

    • DeepMind one shot learning 论文批注 One-Shot Generalization in D

      DeepMind one shot learning 论文批注 One-Shot Generalization in D

      2017-11-16 13:04

    • Android中利用画图类和线程画出闪烁的心形

      Android中利用画图类和线程画出闪烁的心形

      2017-11-14 16:00

    • Android中自定义View(4)

      Android中自定义View(4)

      2017-11-13 14:03

    网友点评
    '