Ich versuche, leere Zeilen innerhalb von Android zu machen. Das habe ich getan:
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="\n\n"
Ich möchte wissen, ob es einen besseren Weg gibt. Vielen Dank
Ich versuche, leere Zeilen innerhalb von Android zu machen. Das habe ich getan:
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="\n\n"
Ich möchte wissen, ob es einen besseren Weg gibt. Vielen Dank
Antworten:
Verwenden Sie Space
oder View
, um eine bestimmte Menge an Speicherplatz hinzuzufügen. Für 30 Pixel mit vertikaler Dichte:
<Space
android:layout_width="1dp"
android:layout_height="30dp"/>
Wenn Sie einen flexiblen Raumfüller benötigen, verwenden Sie View
zwischen Elementen in a LinearLayout
:
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:layout_weight="1"/>
oder
<View
android:layout_width="1dp"
android:layout_height="0dp"
android:layout_weight="1"/>
Dies funktioniert für die meisten Layouts für API 14 und höher, mit Ausnahme von Widgets ( FrameLayout
stattdessen verwenden).
[9/2014 aktualisiert, um Space zu verwenden. Hutspitze zu @Sean]
Wenn die Lücke nicht genau 2 Zeilen hoch sein muss, können Sie eine leere Ansicht wie folgt hinzufügen:
<View
android:layout_width="fill_parent"
android:layout_height="30dp">
</View>
Ansicht Wenn Sie Hintergrundfarbe ändern, Raum , wenn nicht.
Diese Dosierung bedeutet, dass Sie den Ansichtshintergrund ändern müssen.
<View
android:layout_width="match_parent"
android:layout_height="20dp"
android:background="@color/YOUR_BACKGROUND">
</View>
oder Raum
<Space
android:layout_width="match_parent"
android:layout_height="20dp"
/>
Eine aktualisierte Antwort: Seit API 14 können Sie die "Space" -Ansicht verwenden, wie in der Dokumentation beschrieben .
Space ist eine einfache View-Unterklasse, mit der Lücken zwischen Komponenten in Allzwecklayouts erstellt werden können.
<Space android:layout_width="fill_parent" android:layout_height="10dp" />
Wenn Sie den Abstand zwischen den Layouts angeben möchten, können Sie auf diese Weise Leerzeichen verwenden. Wenn Sie den Rand entfernen, wird er nicht angezeigt. Die Verwendung von Text im angezeigten Bereich ist kein guter Ansatz. hoffentlich hilft das.
<Space
android:layout_width="match_content"
android:layout_height="wrap_content"
android:layout_margin="2sp" />
<View
android:layout_width="fill_parent"
android:layout_height="30dp"
android:background="#80000000">
</View>
Ich bin mit dem Ansatz von CaspNZ überhaupt nicht einverstanden.
Zunächst wird diese unsichtbare Ansicht gemessen, da es sich um "fill_parent" handelt. Android wird versuchen, die richtige Breite zu berechnen. Stattdessen wird hier eine kleine konstante Zahl (1dp) empfohlen.
Zweitens sollte View durch eine einfachere Klasse Space ersetzt werden, eine Klasse, die dazu dient, Leerzeichen zwischen UI-Komponenten für die schnellste Geschwindigkeit zu erstellen.
Versuche dies
in layout.xml:
<TextView
android:id="@+id/xxx"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="@string/empty_spaces" />
in strings.xml:
<string name="empty_spaces">\t\t</string>
es hat bei mir funktioniert
Dies kann durch Verwendung von Raum oder Ansicht erreicht werden .
Der Platz ist leicht, aber nicht sehr flexibel.
Aussicht nimmt einen rechteckigen Bereich auf dem Bildschirm ein und ist für das Zeichnen und die Ereignisbehandlung verantwortlich. Die Ansicht ist anpassbarer, Sie können Hintergrund hinzufügen, Formen wie Raum zeichnen.
Raum implementieren:
(ZB: Platz für 20 Pixel mit vertikaler und 10 horizontaler Dichte)
<Space
android:layout_width="10dp"
android:layout_height="20dp"/>
Implementierungsansicht:
(Beispiel: Ansicht Für 20 Pixel mit vertikaler und 10 horizontaler Dichte einschließlich Hintergrundfarbe)
<View
android:layout_width="10dp"
android:layout_height="20dp"
android:background="@color/bg_color"/>
Platz für die Formatierung von Zeichenfolgen mithilfe einer HTML-Entität:
 
für nicht zerbrechliche Leerzeichen.
 
für regelmäßigen Raum.
Es gibt eine bessere Möglichkeit, dies zu tun. Verwenden Sie einfach den folgenden Code und ändern Sie die Größe des leeren Bereichs entsprechend der gewünschten Größe
<Space
android:layout_width="wrap_content"
android:layout_height="32dp"
android:layout_column="0"
android:layout_row="10" />
Wenn Sie mit dem Rasterlayout verwenden, verwenden Sie nur
android:layout_row="10" />
Im Folgenden finden Sie die einfache Möglichkeit, eine leere Zeile mit Zeilengröße zu erstellen. Hier können wir die Größe der Leerzeile anpassen. Probier diese.
<TextView
android:id="@id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="5dp"/>