Когда я изменяю видимость, макет остается тем же и не изменяется, как ожидалось. Вот мой XML:Видимость изменена программно не совпадает с весами
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<GameView
android:id="@+id/gameview"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="5"
android:layout_gravity="top" />
<TextView android:id="@+id/code"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="4"/>
</LinearLayout>
А вот код из моей деятельности:
lazy val mCodeView: TextView = findViewById(R.id.code).asInstanceOf[TextView]
def changeState() = {
mCodeView.setVisibility(if(mCodeView.getVisibility() == View.GONE) View.VISIBLE else View.GONE)
}
Когда я звоню changeState()
, однако, CODEVIEW исчезают, но Gameview не изменяется. Почему и как автоматически изменять размер?
Часть запроса getParent(). RequestLayout была исправлена моя проблема. – startoftext