2017-08-05 5 views
0

Ich habe einen einfachen Dialog, der nur zwei Optionen anzeigt ("Bearbeiten" und "Löschen"). Ich legte sein Layout in der XML-Datei fest und spezifizierte eine bestimmte Breite in den Attributen. In der App erscheint es jedoch so schmal wie "wrap_content" festgelegt wurde. Es ist gerade breit genug, um den Text zu umhüllen. Wie kann ich dieses Problem lösen? Wahrscheinlich vermisse ich etwas wirklich Einfaches. Hier ist der XML-CodeDer benutzerdefinierte Dialog scheint nicht die eingestellte Breite zu haben

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/dialog" 
android:layout_width="350dp" 
android:layout_height="wrap_content" 
android:orientation="vertical" > 
<TextView 
    android:id="@+id/editOption" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginBottom="16dp" 
    android:layout_marginLeft="6dp" 
    android:layout_marginRight="6dp" 
    android:layout_marginTop="16dp" 
    android:text="@string/edit" 
    android:textAlignment="center" 
    android:textColor="@color/colorPrimaryText" 
    android:textSize="@dimen/text_size" /> 

    <TextView 
    android:id="@+id/deleteOption" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginBottom="20dp" 
    android:layout_marginLeft="6dp" 
    android:layout_marginRight="6dp" 
    android:layout_marginTop="20dp" 
    android:text="@string/delete" 
    android:textAlignment="center" 
    android:textColor="@color/colorPrimaryText" 
    android:textSize="@dimen/text_size" /> 
    </LinearLayout> 

Vielen Dank im Voraus

+0

Es ist gerade breit genug, um den Text zu wickeln. Wie kann ich dieses Problem lösen? Sie möchten, dass der Text vertikal oder horizontal ausgerichtet wird? –

+0

Vertikal, ich meine, eins unter dem anderen. – paola91

Antwort

0

Try Layoutbreite in Mindestbreite zu ändern:

android:layout_width="350dp" <- instead 
android:minWidth="350dp" <- insert 
+0

Ok, das Attribut 'minWidth' löst das Problem, danke! Wie auch immer, warum ist es so notwendig? Wenn ich die Layout-Breite anders als "wrap_content" festlege, warum wird der Inhalt einfach umgebrochen? Ich möchte diese Logik verstehen. – paola91

+1

Es hängt von Android-Version, Gerät, Thema ab. Android ist aufgrund der Anzahl der zu unterstützenden Distributionen verzögert. Etwas funktioniert auf Pixel, aber es funktioniert nicht auf Samsung, Huawei oder LG. Wenn es um Ihr Beispiel geht, funktioniert es ohne meine Änderung auf OnePlus 3T. – Maciej

+0

Vielen Dank für die Erklärung. – paola91

Verwandte Themen