¿Cómo se ocultan varias vistas al mismo tiempo?

Tengo una vista relativa de la disposición, y 3 opiniónes de los niños también. Estoy intentando esconderlos todos en código fijando la disposición relativa a INVISIBLE usando setVisibility. Lo curioso es que cuando uso setVisibility (View.INIVISIBLE) sólo el primer hijo está oculto, no los otros dos. Así que estoy un poco confundido – si establezco una vista de padres a invisible no debería cambiar la visibilidad de todos los niños o dejarlos solos?

Siéntase libre de señalarme una página de referencia que lo explique – no puedo encontrar nada.

Actualización: He intentado establecerlo en View.GONE, pero sucede lo mismo, excepto que los dos niños que permanecen visibles suben un poco.

Aquí está el XML relevante:

<RelativeLayout android:id="@+id/optionsform" android:layout_width="fill_parent" android:padding="8dp" android:layout_height="wrap_content" > <TextView android:id="@+id/tvoptions" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:text="@string/tvoptions" android:textColor="#f000" android:textAppearance="?android:attr/textAppearanceMedium" android:textStyle="bold"/> <TextView android:id="@+id/tvdictionary" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_below="@+id/tvoptions" android:layout_marginLeft="30dp" android:layout_marginTop="16dp" android:text="@string/dictionary" android:textAppearance="?android:attr/textAppearanceMedium" android:textColor="#f000" /> <Spinner android:id="@+id/dictionary" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignTop="@+id/tvdictionary" android:layout_alignParentRight="true" android:layout_marginTop="-10dp" android:layout_marginLeft="6dp" android:layout_toRightOf="@+id/tvdictionary" /> </RelativeLayout> 

Y aquí está el código relevante que estoy usando:

  public void onClick(View v) { //Toggle viewing of options, using "if" in case it is set to View.GONE View view = findViewById(R.id.optionsform); if (view.getVisibility() == View.VISIBLE) view.setVisibility(View.INVISIBLE); else view.setVisibility(View.VISIBLE); } 

Intente establecer las tres vistas en View.INVISIBLE o View.GONE .

O

Puedes probar

 public void onClick(View v) { //Toggle viewing of options, using "if" in case it is set to View.GONE RelativeLayout view = (RelativeLayout) findViewById(R.id.optionsform); if (view.getVisibility() == View.VISIBLE) view.setVisibility(View.INVISIBLE); else view.setVisibility(View.VISIBLE); } 

Debe establecer en el estado View.GONE .

  <TextView android:id="@+id/tvdictionary" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" **android:layout_below="@+id/tvoptions"** // *should be android:layout_below="@id/tvoptions* android:layout_marginLeft="30dp" android:layout_marginTop="16dp" android:text="@string/dictionary" android:textAppearance="?android:attr/textAppearanceMedium" android:textColor="#f000" /> <Spinner android:id="@+id/dictionary" android:layout_width="wrap_content" android:layout_height="wrap_content" **android:layout_alignTop="@+id/tvdictionary"** // *should be android:layout_alignTop="@id/tvdictionary* android:layout_alignParentRight="true" android:layout_marginTop="-10dp" android:layout_marginLeft="6dp" android:layout_toRightOf="@+id/tvdictionary"// *should be android:layout_toRightOf="@id/tvdictionary* /> 

@id se utiliza al referenciar la ID del diseño
@ + Id se utiliza al crear un nuevo ID de diseño

Resuelto. Un desinstalar a continuación, instalar la aplicación en mi dispositivo Android hizo el truco. Me cuidaré de eso en el futuro

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.