android 把图片画到View上

1:绘制BitMap对象:

protected void onDraw(Canvas canvas) {
        // TODO Auto-generated method stub
        //装载图像资源,并获得InputStream对象
        InputStream is = context.getResource().openRawResource(R.drawable.XXXX);
        BitmapFactory.Options opts = new BitmapFactory.Options();
        opts.inSampleSize=2;//按图像的50%绘制
        //将InputStream对象解码成BitMap对象
        Bitmap bitmap=BitmapFactory.decodeStream(is,null,opts);
        //绘制位图
        canvas.drawBitmap(bitmap,10,10,null);
}

 注释:drawBitmap方法为使用Paint对象,一次需将最后一个参数设置为null

     BitmapFactory.Options类得inSampleSize属性表示原位图与绘制的位图的比例。
     该属性值为1,表示原位图与绘制的位图的比例是1:1.
     如果为2,表示按原位图的50%(2:1)的大小绘制位图

 

2:使用Drawable.draw方法绘制位图:

protected void onDraw(Canvas canvas) {
        //获取图像资源的Drawable对象
        Drawable drawable=context.getResource().getDrawable(R.drawable.XXXXX);
        //设置位图左上角坐标(前两个参数)和绘制在View上的位图的宽度和高度(后两个参数)
        drawable.setBounds(50,250,180,120);
        //绘制位图
        drawable.draw(canvas);
}

 

转载:http://www.eoeandroid.com/thread-113273-1-1.html

你可能感兴趣的:(android)