mText1.getLayoutParams().height = NEW VALUE не действует во всплывающем окне
В Android
приложение,
Я создаю LinearLayout, который содержит TableLayout, который содержит несколько строк, и одна из строк содержит TextView с именем mText1
Я настроил всплывающее окно с этим LinearLayout с настройкой mText1 следующим образом:mText1.getLayoutParams().height = OLD VALUE
Затем, когда во всплывающем окне в другой строке таблицы пользователь нажимает на ImageView, я бы хотел изменить высоту mText1 следующим образом:mText1.getLayoutParams().height = NEW VALUE
Проблема в том, что это не вступит в силу, но когда я наберу следующий код, он вступит в силу:mText1.setGravity(Gravity.CENTER)
Или, если я наберу следующий код вместо предыдущего, он также вступит в силу:mText1.setText("some value")
Зачем?
1 ответ
Вам нужно позвонить requestLayout()
после изменения LayoutParams
,
Вызывайте это, когда что-то изменилось, что сделало недействительным макет этого представления. Это запланирует проход макета дерева представления.
setGravity
а также setText
занимаемся этим для вас.