Montag, Mai 25, 2020

Android-layout zwei Tasten vertikal zentriert und horizontal

Ich bin die Entwicklung einer Android-Anwendung.

Ich versuche buttons speichern und schließen zentriert, aber Sie erscheinen auf der linken Seite.

Hier ist mein XML-layout-code:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="fill_parent"
    android:orientation="vertical">

    <TextView
        android:id="@+id/dialogGameName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:layout_marginBottom="2sp"
        android:layout_marginLeft="5sp"
        android:layout_marginRight="5sp"
        android:layout_marginTop="5sp"
        android:typeface="sans"
        android:textSize="26sp"
        android:textStyle="bold"/>
    <TextView
        android:id="@+id/dialogGameDescription"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="left"
        android:layout_marginBottom="5sp"
        android:layout_marginLeft="5sp"
        android:layout_marginRight="5sp"
        android:layout_marginTop="2sp"
        android:typeface="monospace"
        android:textSize="18sp"/>

    <LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:layout_gravity="center_vertical|center_horizontal">
        <Button
            android:id="@+id/registerGameButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/save"
            android:gravity="center"
            android:layout_marginBottom="5sp"
            android:layout_marginLeft="5sp"
            android:layout_marginRight="2sp"
            android:layout_marginTop="0sp" />
        <Button
            android:id="@+id/closeButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/close" 
            android:gravity="center"
            android:layout_marginBottom="5sp"
            android:layout_marginLeft="2sp"
            android:layout_marginRight="5sp"
            android:layout_marginTop="0sp"/>
    </LinearLayout>
</LinearLayout>
InformationsquelleAutor VansFannel | 2011-01-14

3 Kommentare

  1. 5

    Können Sie nicht wirklich-center nichts, es sei denn, es ist die Muttergesellschaft der größer ist, als es. Haben Sie die Eltern auf die Tasten, als wrap_content, so gibt es keinen Raum zum Zentrum… versuchen, diese für die Schaltflächen:

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="horizontal"
        android:gravity="center">
        <Button
            android:id="@+id/registerGameButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="save"
            android:layout_marginBottom="5sp"
            android:layout_marginLeft="5sp"
            android:layout_marginRight="2sp"
            android:layout_marginTop="0sp" />
        <Button
            android:id="@+id/closeButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="close" 
            android:layout_marginBottom="5sp"
            android:layout_marginLeft="2sp"
            android:layout_marginRight="5sp"
            android:layout_marginTop="0sp"/>
    </LinearLayout>
    • Dies funktionierte sehr gut. Danke.
  2. 3

    Hinzufügen:

    android:gravity="center_horizontal"

    Ihrem horizontaler linearer Anordnung, die eine mit zwei Tasten.

    Den „android:layout_gravity“ entscheidet, wie der Blick sollte sich in Eltern, während „android:gravity“ entscheidet, wie der Blick auf Kinder ausgerichtet werden sollen

  3. 1

    Einige Tipps für u (Die Veränderung, die ich in Ihrer xml)

    • android:layout_gravity ist für Sie das layout für Ihr Kind, die wir benötigen, um android:gravity

    • exakt center setzen wir android:gravity="center"

    • Werden, um das Kind in der genauen Mitte die Eltern sollten mit android:layout_width="fill_parent" und android:layout_height="fill_parent"

    • wenn das layout ist ein Kind von einem anderen layout sein sollte auch mit android:layout_width="fill_parent" und android:layout_height="fill_parent"

      <TextView
          android:id="@+id/dialogGameName"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:gravity="center"
          android:layout_marginBottom="2sp"
          android:layout_marginLeft="5sp"
          android:layout_marginRight="5sp"
          android:layout_marginTop="5sp"
          android:text="asdff"
          android:typeface="sans"
          android:textSize="26sp"
          android:textStyle="bold"/>
      <TextView
          android:id="@+id/dialogGameDescription"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:gravity="left"
          android:text="asdff"
          android:layout_marginBottom="5sp"
          android:layout_marginLeft="5sp"
          android:layout_marginRight="5sp"
          android:layout_marginTop="2sp"
          android:typeface="monospace"
          android:textSize="18sp"/>
      
      <LinearLayout
          xmlns:android="http://schemas.android.com/apk/res/android"
          android:layout_width="fill_parent"
          android:layout_height="fill_parent"
          android:orientation="horizontal"
          android:gravity="center">
          <Button
              android:id="@+id/registerGameButton"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:text="@string/save"
              android:gravity="center"
              android:layout_marginBottom="5sp"
              android:layout_marginLeft="5sp"
              android:layout_marginRight="2sp"
              android:layout_marginTop="0sp" />
          <Button
              android:id="@+id/closeButton"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:text="@string/close" 
              android:gravity="center"
              android:layout_marginBottom="5sp"
              android:layout_marginLeft="2sp"
              android:layout_marginRight="5sp"
              android:layout_marginTop="0sp"/>
      </LinearLayout>

    • Es ist nicht notwendig, um android:layout_height=“fill_parent“ zu machen, damit es funktioniert.

Kostenlose Online-Tests