亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

實(shí)例3--使用surfaceView

系統(tǒng) 1837 0

?在那本書用的是GameCanvas,我就用surfaceView實(shí)現(xiàn)了和實(shí)例2相同的效果

效果圖:


實(shí)例3--使用surfaceView
實(shí)例3--使用surfaceView

下面給出MainView 的代碼

    package com.wjh.demon_3;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.KeyEvent;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
import android.view.SurfaceHolder.Callback;

public class MainView extends SurfaceView implements Callback,Runnable{
	int keyCode = 0;
	String keyAction = "";
	Thread gameThread = null;
	boolean isGame = true;
	SurfaceHolder holder = null;
	public MainView(Context context) {
		super(context);
		// TODO Auto-generated constructor stub
		setFocusable(true);
		getHolder().addCallback(this);
		holder = this.getHolder();
		
	}
	@Override
	public void run() {
		// TODO Auto-generated method stub
		while(isGame)
		{
			input();
			logic();
			doDraw();
			try {
				Thread.sleep(100);
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}		
		}
		
	}
	//開始游戲主線程
	public void start()
	{
		if(gameThread == null)
		{
		gameThread = new Thread(this);
		gameThread.start();
		}
	}
	//停止游戲主線程
	public void stop()
	{
		isGame = false;
		if(gameThread != null)
		{
			try {
				gameThread.join();
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
	}
	//輸入判斷
	public void input()
	{
		
	}
	//邏輯判斷
	public void logic()
	{
		
	}
	public void doDraw()
	{
		Canvas c = null;
		try
		{
		c = holder.lockCanvas();
		synchronized (holder) {
			paint(c);
		}
		}finally{
			if(c != null)
			{
			holder.unlockCanvasAndPost(c);
			}
		}
	}
	//畫圖
	public void paint(Canvas canvas)
	{
		Paint backGround = new Paint();
		backGround.setColor(Color.BLACK);
		//清屏
		canvas.drawRect(0, 0, getWidth(), getHeight(), backGround);
		//設(shè)置畫筆顏色
		Paint cPaint = new Paint();
		cPaint.setColor(Color.BLUE);
		cPaint.setTextSize(20);
		//輸出按鍵的設(shè)備碼
		canvas.drawText("KeyCode:", 10, 20,cPaint);
		canvas.drawText(""+keyCode,120,20,cPaint);
		//輸出按鍵的設(shè)備名
		canvas.drawText("KeyAction:", 10, 80, cPaint);
		canvas.drawText(keyAction, 120, 80, cPaint);
	}
	@Override
	public void surfaceChanged(SurfaceHolder holder, int format, int width,
			int height) {
		// TODO Auto-generated method stub
		
	}
	@Override
	public void surfaceCreated(SurfaceHolder holder) {
		// TODO Auto-generated method stub
		start();
		
	}
	@Override
	public void surfaceDestroyed(SurfaceHolder holder) {
		// TODO Auto-generated method stub
		stop();
		
	}
	
	public boolean onKeyDown(int keyCode, KeyEvent event) {
		// TODO Auto-generated method stub
		this.keyCode = keyCode;
		switch(keyCode)
		{
		case KeyEvent.KEYCODE_DPAD_UP:
			this.keyAction = "UP";
			break;
		case KeyEvent.KEYCODE_DPAD_DOWN:
			this.keyAction = "DOWN";
			break;
		case KeyEvent.KEYCODE_DPAD_LEFT:
			this.keyAction = "LEFT";
			break;
		case KeyEvent.KEYCODE_DPAD_RIGHT:
			this.keyAction = "RIGHT";
			break;
		case KeyEvent.KEYCODE_DPAD_CENTER:
			this.keyAction = "CENTER";
			break;		
		default:
			this.keyAction="NONE";
			break;
		}
		return super.onKeyDown(keyCode, event);
	}

}

  

apk包(將后綴改為apk): Demon_3.zip

?源文件包: Demon_3.rar

實(shí)例3--使用surfaceView


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 综合久久久久综合97色 | 综合网视频 | 日本不卡在线一区二区三区视频 | 欧美黄色第一页 | 欧美日韩中文字幕久久伊人 | 奇米在线观看视频 | 久久99久久99精品免费看动漫 | 日韩欧美亚洲中字幕在线播放 | 四虎影视国产精品亚洲精品hd | 欧美一级久久 | 国产一区二区免费不卡在线播放 | 欧美视频一区二区三区在线观看 | 亚洲高清网站 | 天天拍夜夜操 | 亚洲一区二区中文 | 操视频网站 | 伊人久久国产 | 国产精品视_精品国产免费 国产精品视频2021 | 91视频高清 | 奇米影视亚洲狠狠色 | 俄罗斯老妇性欧美毛茸茸孕交 | www.九色| 久久精品这里热有精品2015 | 亚洲伦理一二三四 | 婷婷国产天堂久久综合五月 | 国产乱子伦一区二区三区 | 欧美成人免费在线 | 国产成人精品久久二区二区 | 我色综合 | 欧美亚洲日本国产综合网 | 免费一级毛片在线观看 | 国产伦精品一区二区三区在线观看 | 奇米网在线视频 | 国产成人18黄网站麻豆 | 久久精品国产欧美 | 久久视频在线免费观看 | 久久美女| 天天操天天操天天干 | 香蕉久久高清国产精品免费 | 特级毛片在线大全免费播放 | 一级特黄aa大片欧美小说 |