链接到代码
:http://blog.csdn.net/cuicanxingchen123456/article/details/49302615
mainActivity:
display = getWindowManager().getDefaultDisplay();
-->display.getWidth(),display.getHeight();传入GameView
-->GameView.init(实例化new GameView)-->GameView.getInstance(返回一个gameview)-->setContentView(gameview);
|
|
\|/
GameView:
执行public GameView(display.getWidth(),display.getHeight()) 执行这个构造方法的时候,将默认初始值
-->CreatMatrixBitmap(); 将加载的图片按比例缩放以适应屏幕大小
-->setGameState(); mGameMap mMapHeightLengh mMapWidthLengh
-->surfaceCreated(); 将GameView这个类实例化成一个线程,然后在每一次启动时启动这个线程
-->surfaceChanged(); null
-->run(); 执行线程中的run方法,
-->run()中的synchronized; 执行run中的synchronized将mSurfaceHolder传入
-->draw(); 执行synchronized中的draw 锁住画布 -->执行RenderGame 解开画布
-->RenderGame();
-->RenderMap();
-->DrawImage();
onTouchEvent
此方法是在下棋子的时候执行
-->UpdateTouchEvent();