How to change visibility of layout programmatically

android, layout, visibility

Solution

Have a look at `View.setVisibility(View.GONE / View.VISIBLE / View.INVISIBLE)`.

From the API docs:

`public void setVisibility(int visibility)`

Since: API Level 1

Set the enabled state of this view. Related XML Attributes: android:visibility

Parameters: `visibility` One of VISIBLE, INVISIBLE, or GONE.

Note that `LinearLayout` is a `ViewGroup` which in turn is a `View`. That is, you may very well call, for instance, `myLinearLayout.setVisibility(View.VISIBLE)`.

This makes sense. If you have any experience with AWT/Swing, you'll recognize it from the relation between `Container` and `Component`. (A `Container` is a `Component`.)

Problem

There is a way to change the visibility of View in the XML, but how can I change programmatically visibility of the layout defined in XML? How to get the layout object? ``` <LinearLayout android:id="@+id/contacts_type" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:visibility="gone"> </LinearLayout> ```

Original source