我正在为我的Android应用程序编写一个自定义视图,其中包含多个ShapeDrawables
。对于这些drawable,我必须使用setBounds()
指定尺寸。现在,我的视图将始终是正方形,但我希望它使用尽可能多的空间,因为我在嵌入它的父级中允许它。
所以,现在我使用一些硬编码值来调用setBounds()
,但是当我指定android:layout_width
和android:layout_height
时,我希望缩放ShapeDrawables
以便它们出现尽可能大。
如何在自定义View类中完成此操作?
答案 0 :(得分:1)
自己找到它:
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int width = MeasureSpec.getSize(widthMeasureSpec);
int height = MeasureSpec.getSize(heightMeasureSpec);
mSize = Math.min(width, height);
setMeasuredDimension(mSize, mSize);
}