У меня есть Linringayout в моем xml, который имеет fill_parent для высоты и ширины... Теперь я хочу динамически изменять высоту и ширину... Я попытался использовать
_llChooseType.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,getWindowManager().getDefaultDisplay().getHeight()-100));
Но он дает мне java.lang.ClassCastException: android.view.ViewGroup $LayoutParams исключение...
Как это сделать?
Используйте это.
new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT,getWindowManager().getDefaultDisplay().getHeight()-100));
Если _llChooseType - это объект LinearLayout, то я думаю, вы должны использовать
new LinearLayout.LayoutParams(...);
Привет
Ziteng Chen
Ширина и высота SetLayoutParams могут иметь только следующие 3 значения: FILL_PARENT, MATCH_PARENT и WRAP_CONTENT.
Вы должны использовать public void layout (int l, int t, int r, int b)
Чтобы реально изменить макет созданного представления/группы просмотра.
Сделайте это... Тип:
_llChooseType.setLayoutParams(new Layo
и нажмите ctrl+ space_bar. Это даст вам список параметров LayoutParams на выбор... выберите LinearLayout.LayoutParams и напишите остальную часть кода как есть. Проблема здесь в том, что LayoutParams, которые вы используете, - ViewGroup.LayoutParams, и они не применяются к линейным макетам!