我写了一个自定义drawable并在ImageView中显示它。
如果我在ImageView中添加一个填充,我的drawable将覆盖填充并填充整个图像视图。
我在drawable中做的是:
@Override
public void setBounds(int left, int top, int right, int bottom) {
super.setBounds(left, top, right, bottom);
Rect r = new Rect();
getPadding(r);
Log.d("Test", "padding " + r.toShortString());
mWidth = right - left;
mHeight = bottom - top;
}
并在Drawables绘制方法中绘制一个Bitmap来填充mWidth和mHeight。
那么如何将填充量计入数量? getPadding(R);即使ImageView有一些填充,也总是返回0,0,0,0值。
知道如何解决这个问题吗?
答案 0 :(得分:0)
getPadding()只能在加载Imageview后调用。添加ViewTreeObserver以在加载imageview后获取填充。