android获取Bitmap的两种方式

第一种方法
Java代码 复制代码 收藏代码
  1. //得到Resources对象  
  2. Resources r = this.getContext().getResources();  
  3. //以数据流的方式读取资源  
  4. Inputstream is = r.openRawResource(R.drawable.my_background_image);  
  5. BitmapDrawable  bmpDraw = new BitmapDrawable(is);  
  6. Bitmap bmp = bmpDraw.getBitmap(); 
//得到Resources对象
Resources r = this.getContext().getResources();
//以数据流的方式读取资源
Inputstream is = r.openRawResource(R.drawable.my_background_image);
BitmapDrawable  bmpDraw = new BitmapDrawable(is);
Bitmap bmp = bmpDraw.getBitmap();


  第二种方法这种方法是通过BitmapFactory这个工具类,BitmapFactory的所有函数都是static,这个辅助类可以通过资源ID、路径、文件、数据流等方式来获取位图。大家可以打开API 看一下里边全是静态方法。这个类里边有一个叫做 decodeStream(InputStream is)  
此方法可以 解码一个新的位图从一个InputStream。这是获得资源的InputStream。
代码:
Java代码 复制代码 收藏代码
  1. InputStream is = getResources().openRawResource(R.drawable.icon);    
  2.          Bitmap mBitmap = BitmapFactory.decodeStream(is);    
  3.          Paint mPaint = new Paint();    
  4.          canvas.drawBitmap(mBitmap, 40, 40, mPaint);   
InputStream is = getResources().openRawResource(R.drawable.icon);  
         Bitmap mBitmap = BitmapFactory.decodeStream(is);  
         Paint mPaint = new Paint();  
         canvas.drawBitmap(mBitmap, 40, 40, mPaint);  


   显然第二种方法简单很多了。 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值