在使用android framework里的Abslayout绝对布局控件的时候,我指定了子控件如ImageView、TextView的位置及长宽尺寸后添加到Abslayout里头,结果发现有的控件的布局是正确的,但是有的则出现了意外情况。出现意外的子控件ImageView所显示的图片的位置和尺寸都是正确的,但是ImageView的实际外接矩形在长度上则远远大于我设置的值。我的设置方法如下:AbsLayout.LayoutParams imageBoxLP = new LayoutParams( 10, 10, 100,100);
ImageView image = new ImageView(getContext());
image.setImageBitmap(getImage());
image.setScaleType(ImageView.ScaleType.FIT_START);
image.setBackgroundColor(0x330000ff);

absLayout.addView(image, imageBoxLP);设置的图片的尺寸与image.getMeasuredWith(),image.getMeasuredHeight()获得的值一致(这里图片的显示的尺寸为长宽各100),图片显示控件image的外接矩形则和getWidth()、getHeight()获得的值一致。但是上述两组方法获得的长宽并不一致。这就导致出现了图片的尺寸不等于图片显示控件的外接矩形尺寸。

我知道image.getMeasuredWith(),image.getMeasuredHeight()这组方法是在布局的时候用到的,getWidth()、getHeight()方法返回的才是控件最终的尺寸。但是我想要图片显示控件的尺寸就是我设置的那个尺寸该怎么办?不仅ImageView控件有这样的情况,TextView也出现了一样的情况。不知各位大虾是否有遇到过,希望能够指点一二,小弟感激不尽。