方法一:
Canvas类用来实现绘制.通过组合使用Canvas类的成员函数可以实现随心随欲地绘制图片的任何部分. Canvas.clipRect:设置显示区域 Canvas.drawBitmap:绘制 例子: Bitmap b=BitmapFactory.decodeStream("图片编号", null);//读取图片 ... Canvas c = null;//实例Canvas c.save();//记录原来的canvas状态 c.clipRect(100,100,200,300);//显示从(100,100)到(200,300)的区域(单位:象素) c.drawBitmap(b,10,0,null); //将阉割过的图片画到(10,0)位置 c.restore();//恢复canvas状态
未验证成功
方法二:
在自己自定义的一个组件中由于需要用图片显示数字编号,而当前图片就只有一张,上面有0-9是个数字,于是不得不考虑将其中一个个的数字切割下来,需要显示什么数字,只需要组合一下就好了。
下面是程序的关键代码:
在MyView(继承于View)类中的重写的onDraw(Canvas canvas)方法中,有如下代码段:
- Bitmap resource = BitmapFactory.decodeResource(this.getResources(), R.drawable.num);
- Bitmap zero = Bitmap.createBitmap(resource, 0, 0, 12, 12);
- Bitmap one = Bitmap.createBitmap(resource, 12, 0, 12, 12);
- Bitmap two = Bitmap.createBitmap(resource,