DisplayMetrics metrics=new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
int screenWidth=metrics.widthPixels;
int screenHeight=metrics.heightPixels;
View view=LayoutInflater.from(this).inflate(R.layout.layout_new_share,null);//获取试图
layoutView(view,screenWidth,screenHeight);设置转换View的宽度和高度
Bitmap bm=loadBitmapFromView(view);//将view转成bitmap
private void layoutView(View v,int width,int height){
v.layout(0,0,width,height);
int measuredWidth=View.MeasureSpec.makeMeasureSpec(width,View.MeasureSpec.EXACTLY);
int measuredHeight=View.MeasureSpec.makeMeasureSpec(height,View.MeasureSpec.AT_MOST);
v.measure(measuredWidth,measuredHeight);
v.layout(0,0,v.getMeasuredWidth(),v.getMeasuredHeight());
}
private Bitmap loadBitmapFromView(View v){
int w=v.getWidth();
int h=v.getHeight();
Bitmap bitmap=Bitmap.createBitmap(w,h, Bitmap.Config.ARGB_8888);
Canvas c=new Canvas(bitmap);
c.drawColor(Color.WHITE);
v.layout(0,0,w,h);
v.draw(c);
return bitmap;
}