So ändern Sie die Sichtbarkeit des Layouts programmgesteuert

Lesezeit: 2 Minuten

Benutzer-Avatar
Dariusz Bacinski

Es gibt eine Möglichkeit, die Sichtbarkeit von View in XML zu ändern, aber wie kann ich die Sichtbarkeit des in XML definierten Layouts programmgesteuert ändern? Wie erhalte ich das Layoutobjekt?

<LinearLayout
    android:id="@+id/contacts_type"
    android:orientation="horizontal"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:visibility="gone">
</LinearLayout>

Benutzer-Avatar
aiobe

Schau mal rein View.setVisibility(View.GONE / View.VISIBLE / View.INVISIBLE).

Von dem API-Dokumente:

public void setVisibility(int visibility)

Seit: API-Level 1

Legen Sie den aktivierten Status dieser Ansicht fest.

Zugehörige XML-Attribute: android:visibility

Parameter:
visibility Entweder SICHTBAR, UNSICHTBAR oder GEGANGEN.

Beachten Sie, dass LinearLayout ist ein ViewGroup was wiederum ein ist View. Das heißt, Sie können zum Beispiel sehr gut anrufen, myLinearLayout.setVisibility(View.VISIBLE).

Das macht Sinn. Wenn Sie Erfahrung mit AWT/Swing haben, werden Sie es an der Beziehung zwischen erkennen Container und Component. (EIN Container ist ein Component.)

  • Ich frage nach LAYOUT, nicht nach VIEW.

    – Dariusz Bacinski

    12. August 2010 um 8:24 Uhr

  • LinearLayout erbt von einer Ansicht, daher sollte dies funktionieren developer.android.com/reference/android/widget/…

    – ccheneson

    12. August 2010 um 8:28 Uhr

  • Wie auch immer, dass wir dies über Javascript Executor – Java aktivieren können?

    – Ashokkumar Ganesan

    11. August 2020 um 3:49 Uhr

Benutzer-Avatar
SuperNova1054

TextView view = (TextView) findViewById(R.id.textView);
view.setText("Add your text here");
view.setVisibility(View.VISIBLE);

Benutzer-Avatar
Pflaster

Verwenden Sie dieses Layout in Ihrer XML-Datei

<LinearLayout
  android:id="@+id/contacts_type"
  android:orientation="horizontal"
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  android:visibility="gone">
</LinearLayout>

Definieren Sie Ihr Layout in der .class-Datei

 LinearLayout linearLayout = (LinearLayout) findViewById(R.id.contacts_type);

Wenn Sie dieses Layout anzeigen möchten, schreiben Sie einfach

 linearLayout.setVisibility(View.VISIBLE);

und wenn Sie das Layout ausblenden möchten, schreiben Sie einfach

 linearLayout.setVisibility(View.INVISIBLE);

Sie können die Sichtbarkeit des Layouts genauso ändern wie in der normalen Ansicht. Verwenden Sie setVisibility (View.GONE) usw. Alle Layouts sind nur Ansichten, sie haben View als übergeordnetes Element.

Benutzer-Avatar
Hanischa

Dies ist ein programmatischer Ansatz:

 view.setVisibility(View.GONE); //For GONE
 view.setVisibility(View.INVISIBLE); //For INVISIBLE
 view.setVisibility(View.VISIBLE); //For VISIBLE

1205450cookie-checkSo ändern Sie die Sichtbarkeit des Layouts programmgesteuert

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy