你可以把它按以下步驟進行:
//first, View preparation
LayoutInflater inflater =
(LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View tagView = inflater.inflate(R.layout.activity_main, null);
TextView name = (TextView) tagView.findViewById(R.id.textView1);
name.setText("hello");
//second, set the width and height of inflated view
tagView.measure(MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED),
MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
tagView.layout(0, 0, tagView.getMeasuredWidth(), tagView.getMeasuredHeight());
//third, finally conversion
final Bitmap bitmap = Bitmap.createBitmap(tagView.getMeasuredWidth(),
tagView.getMeasuredHeight(), Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
tagView.draw(canvas);
最後,你有你的充氣tagView
的bitmap
。
崩潰的原因tagView.getLayoutParams()。width和tagView.getLayoutParams()。高度返回NullPointerException異常 – user1531240
看到我的更新答案...它工作正常:) – waqaslam
tagView.measure(MeasureSpec.makeMeasureSpec(0,MeasureSpec.UNSPECIFIED ), MeasureSpec.makeMeasureSpec(0,MeasureSpec.UNSPECIFIED)); 將拋出NullPointExcetion – user1531240