android画图学习笔记
2010-08-11 10:53:00 来源:WEB开发网只几天看了Snake这个Demo,没事那就做个俄罗斯方块吧,再此做个笔记。
只几天看了Snake这个Demo,没事那就做个俄罗斯方块吧,再此做个笔记。
首先要把一张图片载入到屏幕上,写一个类TileView(按照Snake的模式),在onDraw方法中加入
mTileSize是全局变量,值为24,是素材图片的长宽。一共有三个图片,红黄绿,三个方块,可以构成贪吃蛇,也可以玩俄罗斯方块。
Java代码
Log.i(tag, "TileView onDraw");
Resources r = this.getContext().getResources();
Bitmap bitmap = Bitmap.createBitmap(mTileSize, mTileSize, Bitmap.Config.ARGB_8888);
Drawable tile = r.getDrawable(R.drawable.redstar);
tile.setBounds(0, 0, mTileSize, mTileSize);
tile.draw(canvas);
canvas.drawBitmap(bitmap, 0, 0, mPaint);
Log.i(tag, "TileView onDraw");
Resources r = this.getContext().getResources();
Bitmap bitmap = Bitmap.createBitmap(mTileSize, mTileSize, Bitmap.Config.ARGB_8888);
Drawable tile = r.getDrawable(R.drawable.redstar);
tile.setBounds(0, 0, mTileSize, mTileSize);
tile.draw(canvas);
canvas.drawBitmap(bitmap, 0, 0, mPaint);
首先create一个Bitmap。
Drawable tile = r.getDrawable(R.drawable.redstar);
就是把红色方块载入到程序中,然后设置显示的范围,然后把这个Drawable画到画布canvas上,最后画布开始画画,这个图像就显示出来了。
怎么感觉这么复杂呢?那么多的参数都是干啥的?继续研究
既然一个图片可以显示出来了,现在让三个方块都显示出来,一排显示
Java代码
Resources r = this.getContext().getResources();
Bitmap bitmap = Bitmap.createBitmap(mTileSize, mTileSize, Bitmap.Config.ARGB_8888);
Drawable tile1 = r.getDrawable(R.drawable.redstar);
tile1.setBounds(0, 0, mTileSize, mTileSize);
tile1.draw(canvas);
Drawable tile2 = r.getDrawable(R.drawable.yellowstar);
tile2.setBounds(mTileSize, 0, mTileSize*2, mTileSize);
更多精彩
赞助商链接