25游戏画图



public class GameView extends SufaceView implements SurfaceHolder.Callback, Runnable {
 private Handler handler;
 private SurfaceHolder holder;
 private Canvas canvas;
 private Bitmap background;
 private boolean isRunning;

 public GameView(Context context, Handler handler){
  super(context);
  this.handler = handler;
  holder = this.getHolder();
  holder.addCallback(this);
 }

 public void initBitmap(){
  background = BitmapFactory.decodeResource(getResource(),R.drawable.background);
 }
 
 public void drawBackground(){
  Rect src = new Rect(0, 0, bgBitmap.getWidth() * 3 / 4,
    2 * bgBitmap.getHeight() / 3);
  Rect dst = new Rect(0, 0, screen_width, screen_height);
  canvas.drawBitmap(bgBitmap, src, dst, null);
 }

 public void onDraw(){
  synchronized (surfaceHolder) {
   try {
    canvas = surfaceHolder.lockCanvas();
    // 画背景
    drawBackground();
    // 画牌
    for (int i = 0; i < 3; i++)
     drawPlayer(i);
    // 地主牌
    for (int i = 0, len = dizhuList.size(); i < len; i++)
     drawCard(dizhuList.get(i));
    // 画按钮( 抢地主,不抢,出牌,不出)
    drawButton();
    // message部分 用3个String存
    drawMessage();
    // 画地主图标
    drawDizhuIcon();
    // 出牌界面(3个地方,用3个vector存)
    drawOutList();

   } catch (Exception e) {
    e.printStackTrace();
   } finally {
    if (canvas != null)
     surfaceHolder.unlockCanvasAndPost(canvas);
   }
  }
 }

 public void run(){
  while (start) {
   if (repaint) {
    onDraw();
    repaint = false;
    Sleep(33);
   }
  }
 }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

柠檬李先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值