measure()在dynamic布局和textView – Android上无法正常工作

我想将一个RelativeLaout视图转换成一个Bitmap。 我已经尝试了另一个答案和不同的select没有成功。 我的XML视图是一种:

 ----的RelativeLayout
 ------- ImageView的
 -------的TextView

每个人都有wrap_content措施。

因为我需要几个视图的位图,所以我用这种方式来夸大它:

  LayoutInflater inflater =(LayoutInflater)mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
查看v = inflater.inflate(R.layout.localviewlayout,null);

 ImageView img =(ImageView)v.findViewById(R.id.imgPlace);
 img.setImageBitmap(MyDynamicBitmap);

 TextView txt1 =(TextView)v.findViewById(R.id.text1);
 txt1.setText(MyDynamicText);
返回v; 

之后 :


 //在measure()我得到一个nullpointerException在RelativeLayout.onMeasure()。我也试过//与MeasureSpec.EXACTLY
 v.measure(MeasureSpec.makeMeasureSpec(0,MeasureSpec.UNSPECIFIED),
                             MeasureSpec.makeMeasureSpec(0,MeasureSpec.UNSPECIFIED));
 v.layout(0,0,v.getMeasuredWidth(),v.getMeasuredHeight());
位图b = Bitmap.createBitmap(v.getWidth(),v.getHeight(),Bitmap.Config.ARGB_8888);
 v.draw(new Canvas(b));
 Paint p = new Paint();
 myMainCanvas.drawBitmap(b,myPointX,myPointY,p);                   

RelativeLayout的textView的内容是dynamic的,所以我不知道文本的宽度或高度。 除了例外,如果我手动设置足够大小的测量function(insted 0),我的dynamic文本并不完全显示。 我希望你能帮助我,因为现在,我卡住了。 谢谢youuu

Solutions Collecting From Web of "measure()在dynamic布局和textView – Android上无法正常工作"