Ihr Hinweis, wann View und wann Space verwendet werden sollen, hat mein Problem gelöst, dass keine Hintergrundfarbe angezeigt werden kann. Vielen Dank!
Igor
1
Vielen Dank!!! Ich habe mich über die Hintergrundfarbe für den Weltraum gewundert.
Ein Beispiel für alle, die sich fragen:<Space android:layout_width="fill_parent" android:layout_height="10dp" />
XåpplI'-I0llwlg'I -
5
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.
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.
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)
Fügen Sie einfach ein weightSumTag zu linearlayout1 hinzu und geben Sie für die entsprechende Ansicht darunter layout_weightals .9 ein Leerzeichen zwischen den Ansichten ein. Sie können mit den Werten experimentieren, um einen geeigneten Wert für Sie zu erhalten.
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
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.
Antworten:
Verwenden Sie
Space
oderView
, 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 aLinearLayout
:<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]
quelle
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>
quelle
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" />
quelle
Eine aktualisierte Antwort: Seit API 14 können Sie die "Space" -Ansicht verwenden, wie in der Dokumentation beschrieben .
quelle
<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" />
quelle
<View android:layout_width="fill_parent" android:layout_height="30dp" android:background="#80000000"> </View>
quelle
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.
quelle
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
quelle
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.quelle
Fügen Sie einfach ein
weightSum
Tag zulinearlayout
1 hinzu und geben Sie für die entsprechende Ansicht darunterlayout_weight
als .9 ein Leerzeichen zwischen den Ansichten ein. Sie können mit den Werten experimentieren, um einen geeigneten Wert für Sie zu erhalten.quelle
Stimmen Sie mit allen Antworten überein ...... auch,
<TextView android:text="" android:layout_width="match_parent" android:layout_height="30dp" android:layout_weight="2" />
sollte funktionieren :) Ich spiele nur mit anderen, da TextView mein Favorit ist (Speicherverschwendung!).
quelle
Die vorherigen Antworten haben in meinem Fall nicht funktioniert. Das Erstellen eines leeren Elements im Menü ist jedoch ausreichend.
<menu xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:android="http://schemas.android.com/apk/res/android"> ... <item /> ... </menu>
quelle
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
quelle
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"/>
quelle