如何获得imageview的宽度和高度?

时间:2014-01-08 03:27:32

标签: android imageview

我想获得ImageView的宽度和高度。

myimgbg = (ImageView) findViewById(R.id.myimggb);
myimgbg.setBackgroundResource(R.drawable.dudu_1);

6 个答案:

答案 0 :(得分:1)

其他答案演示了如何获取尺寸,但是在测量布局之前,您试图过早地做到这一点。这就是你如何做到这一点我很确定你永远不需要这样做 - 几乎总有一种更好的方法,不需要你知道任何事物的像素尺寸。

myimgbg.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
    @Override
    public void onGlobalLayout() {
        myimgbg.getViewTreeObserver().removeGlobalOnLayoutListener(this);
        int width = myimgbg.getWidth();
    }
});

再次强调,如果你正在做一些需要知道视图的确切像素大小的事情,你应该退后一步,重新考虑如何做你想做的事。

答案 1 :(得分:0)

检查一下:

image_view.getLayoutParams().height 
image_view.getLayoutParams().width 

希望这会有所帮助。

答案 2 :(得分:0)

尝试myimgbg.getWidth()和myimgbg.getHeight()

答案 3 :(得分:0)

这是从imageview获取宽度和高度的简单方法

ImageView img = (ImageView) findViewById(R.id.img);
Log.d(TAG, "width : " + img.getWidth());

答案 4 :(得分:0)

试试吧, 在绘制视图后

   yourView.getHeight()
    yourView.getWidth()

LayoutParams params=yourView.getLayoutParams();
params.height //is your views height

答案 5 :(得分:0)

试试这个:

int width=image.getWidth();
int Height=image.getHeight();