I am having some issues with my layout. Basically I have two modes. Normal and Error. In normal mode I want to show the variable_one
and variable_two
linear layouts. In the error state I only want to show variable_one
but centered in the main layout. The room name text must always remain in the same spot.
In the fragment code to set the visibility of variable_two
I set the layout visibility to GONE
My layout is
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res/com.priceelectronics.pci"
android:id="@+id/label_and_text_value_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<me.grantland.widget.AutofitTextView
android:id="@+id/roomname"
style="@style/SingleRoomNameStyle"
android:layout_height="wrap_content"/>
<LinearLayout
android:id="@+id/variable_one"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView android:id="@+id/label"
android:layout_width="wrap_content"
android:layout_height="46px"
android:textColor="#CFFFFFFF"
android:textStyle="normal"
android:textSize="25sp"
android:text="@string/Name"
android:layout_gravity="center"
android:gravity="center"/>
<me.grantland.widget.AutofitTextView
android:id="@+id/value"
android:layout_width="wrap_content"
android:layout_height="101px"
android:paddingLeft="48dp"
android:paddingRight="48dp"
android:layout_gravity="center"
android:gravity="center"
android:minWidth="200dp"
android:text="0.0000"
android:textColor="#FFFFFF"
android:textSize="55dp"
android:textStyle="bold"
android:maxLines="2"
app:sizeToFit="true"/>
</LinearLayout>
<LinearLayout
android:id="@+id/variable_two"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<Space
android:id="@+id/spacer"
android:layout_width="match_parent"
android:layout_height="30dp" />
<TextView android:id="@+id/label_two"
android:layout_width="wrap_content"
android:layout_height="46px"
android:textColor="#CFFFFFFF"
android:textStyle="normal"
android:textSize="25sp"
android:text="@string/Name"
android:layout_gravity="center"
android:gravity="center"/>
<me.grantland.widget.AutofitTextView
android:id="@+id/value_two"
android:layout_width="wrap_content"
android:layout_height="189px"
android:paddingLeft="48dp"
android:paddingRight="48dp"
android:layout_gravity="center"
android:gravity="top|center_horizontal"
android:minWidth="200dp"
android:text="0.0000"
android:textColor="#FFFFFF"
android:textSize="55dp"
android:textStyle="bold"
android:maxLines="2"
app:sizeToFit="true"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
Both variable_one
and variable_two
are set to wrap content. Is there a simple way to set variable_two
as GONE
and force variable_one
to expand and center?