2013-11-17 3 views
0

Я пишу пользовательское представление для моего приложения Android, которое состоит из нескольких ShapeDrawables. Для этих чертежей я должен указать размеры, используя setBounds(). Теперь мой взгляд всегда будет квадратным, но я хочу, чтобы он использовал столько места, сколько я допускаю в родительском объекте, где он встроен.Как автоматически масштабировать пользовательский вид с помощью ShapeDrawables?

Итак, сейчас я называю setBounds() с некоторыми значениями закодированных, но когда я указываю android:layout_width и android:layout_height, я хочу, чтобы мой ShapeDrawables быть расширены так, что они появляются как можно больше.

Как я могу выполнить это в своем классе вида?

ответ

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); 
} 
Смежные вопросы