Android 怎么使用Bitmap+Canvas 自适应屏幕
我们可以使用Matrix 来放缩我们得到的Bitmap 从而使我们的BItmap适应我们的手机屏幕
首先我们得先获取我们的手机屏幕的大小
WindowManager wm = (WindowManager) getContext().getSystemService( Context.WINDOW_SERVICE); int width = wm.getDefaultDisplay().getWidth(); int height = wm.getDefaultDisplay().getHeight();
然后我们构造一个新的Matrix对象,自己完成写一个函数,如下:
public Bitmap resizeBitmap(Bitmap bitmap,int w,int h) { if(bitmap!=null) { int width = bitmap.getWidth(); int height = bitmap.getHeight(); int newWidth = w; int newHeight = h; float scaleWight = ((float)newWidth)/width; float scaleHeight = ((float)newHeight)/height; Matrix matrix = new Matrix(); matrix.postScale(scaleWight, scaleHeight); Bitmap res = Bitmap.createBitmap(bitmap, 0,0,width, height, matrix, true); return res; } else{ return null; } }
这样我们通过这个函数返回的Bitmap对象就是可以适应我们手机屏幕大小的了。。