¿Cómo podemos ocultar incluyen el diseño de la programación en Android?

Tengo que incluir una disposición en mi aplicación. Así que he utilizado

<include
    android:id="@+id/support_layout"
    android:width="match_parent"
    android:height="match_parent"
    layout="@layout/support"/>

He referencia a este tag en mi archivo java utilizando la Vista.

View v = (View) findViewById(R.id.support_layout);

Pero en algún momento de mi código que tengo para Ocultar este diseño.
así que he usado v. IDO

Pero no Esconderse.
Quiero hacer referencia a aquellos de texto y el botón atributos situado en XML a través de programación.
¿Cómo puedo hacer eso?

No es mi support.xml:

<LinearLayout
    android:id="@+id/support_layout"
    android:width="match_parent"
    android:height="match_parent">

    <TextView
        android:id="@+id/txt"
        android:width="match_parent"
        android:height="wrap_content"/>

    <Button
        android:id="@+id/btn" 
        android:width="match_parent"
        android:height="wrap_content"
        android:text="Button"/>

</LinearLayout>
  • Podría publicar el código que estás usando para ocultar que View?
  • trate de usar v. setVisibility(Ver.Se ha IDO); en su lugar sólo v. IDO.

3 Kommentare

  1. 16

    Necesitamos ver su implementación real de ocultar que View que usted ha mencionado.

    Pero, recta a partir de la lectura de tu pregunta, supongo que has podría hacerlo de la manera equivocada.

    Para ocultar o hacer una vista invisible, utilice esto:

    yourView.setVisibility(View.INVISIBLE);

    Tener en cuenta que esto no quita la vista de compeletly; sería aún permanecen en su disposición y se puede obtener una referencia a él o incluso intentar manipularlo.

    Para quitar compeletly, el uso de este lugar:

    yourView.setVisibility(View.GONE);

    Ahora si se llama a esta, yourView sería compeletly eliminado de la presentación. Usted ya no es capaz de obtener una referencia a él.

    • si voy a la Vista del usuario.Visible de nuevo, entonces este diseño será visible o no??
    • por supuesto. Si usted llama yourView.setVisibility(View.VISIBLE) el dijo ‘Ver’ será visible de nuevo.
    • Pero en mi caso Que está mostrando un error al acceder a los elementos en el diseño de
    • Seerapu, sería difícil de resolver sin saber lo que hacer en el código del tour. Por favor, actualice su pregunta junto con la porción de código.
    • Yo perdí a mi referencia a ella cuando me establezca la visibilidad de la Vista.Ha IDO? He estado probando esto de las edades, y puedo alternar entre la Vista.PASADO y Ver.VISIBLE. Yo puedo hacer la Vista.VISIBLE de la Vista.Ha IDO.
  2. 10

    Poner ese punto de vista en un linearlayout y ocultar el linearlayout. Va a trabajar.

    <LinearLayout
    android:id="@+id/support_layout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical" >
    
    <include
        layout="@layout/support"
        android:height="match_parent"
        android:width="match_parent" /> </LinearLayout>

    Y no te olvides de escribir Linearlayout en lugar de la Vista.

    Brevemente, en lugar de

    View v = (View) findViewById(R.id.support_layout);

    Ello

    LinearLayout v = (LinearLayout) findViewById(R.id.support_layout);
    • Niega el uso de el uso de incluir las etiquetas.La idea es hacer jerarquía plana.
    • mismo para el uso de incluir con la combinación de etiquetas
  3. 3

    Puede ocultar esta «incluido» diseño con llamar a la setVisibility() :

    v.setVisibility(View.GONE)

    y mostrar más tarde con la llamada :

    v.setVisibility(View.VISIBLE)

    A la referencia de un botón y textview de apoyo de diseño puede utilizar el método findViewById en su incluida la Vista (no estoy seguro, pero creo que aún no obligatorio, usted puede llamar directamente sobre la actividad de la vista) :

    View supportLayout = (View) findViewById(R.id.support_layout);
    Textview txv = (TextView) findViewById(R.id.txt);
    Button btn = (Button) findViewById(R.id.btn);

    (si no funciona probar con : Button btn = (Button) supportLayout.findViewById(R. id.btn);)

    — FYI —

    Cuando te dan los atributos de incluir etiquetas que reemplazar aquellos de los que se incluyen el diseño (no support_layout LinearLayout) así que usted no necesita hacer que

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea