Form zerlegbar als Hintergrund, eine Linie an der Unterseite

Ich benutze eine Zeichnung als Hintergrund einer TextView nur um eine Trennlinie unter dem Text zu haben. Achivied es mit diesem drawable-xml:

<?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android" > <item> <shape android:shape="rectangle"> <solid android:color="#FFDDDDDD" /> <gradient android:angle="0" android:startColor="#FFAAAAAA" android:endColor="#FFEEEEEE" /> </shape> </item> <item android:bottom="2dp"> <shape android:shape="rectangle"> <solid android:color="#FF000000" /> </shape> </item> </layer-list> 

Aber diese Methode zeichnet ein farbiges Rechteck über einem schwarzen Rechteck. Ich hätte gern gerade die Linie an der Unterseite der Form ohne schwarzes Rechteck, weil Schwarzes nicht transparent ist. Wie könnte ich das erreichen?

  • Wie sieht die Eklipse den Namen Ihres Projektes aus?
  • Android-Ansatz für "Bewerte meine Bewerbung"
  • Eclipse LogCat zeigt nur den ersten Buchstaben von jeder Nachricht an
  • Planen Sie wiederkehrende Aufgabe in Android
  • Wie kann ich die unnötige Oberpolsterung der Navigationsansicht entfernen?
  • Gibt es eine Möglichkeit, die XML-Warnungen zu deaktivieren?
  • Android mit Eclipse - Warten auf HOME ('android.process.acore') gestartet werden?
  • Was ist der Unterschied zwischen Android 4.4W (API20) und Android L (API20, L Vorschau) im SDK Manager?
  • Besser Platz, um versionCode / versionName zu setzen? Build.gradle vs AndroidManifest.xml
  • Android Drawable: Layer-Listen-Wiederholungs-Bitmap wird nicht geladen, wenn sie vollständig abgedeckt ist
  • RemoteViews konnte nicht erweitert werden
  • Wie kann ich die Deckkraft einer Bitmap ändern?
  • 5 Solutions collect form web for “Form zerlegbar als Hintergrund, eine Linie an der Unterseite”

    Im Allgemeinen versuche ich, so wenig wie möglich mit Hintergründen zu verwirren, es sei denn, absolut notwendig, da dabei die Standard-Hintergrundfarben überschreibt, die Zustände für fokussierte, gepresste, etc. haben. Ich schlage vor, nur eine zusätzliche Ansicht (in einem vertikalen LinearLayout) zu verwenden So dick wie du es brauchst. Beispielsweise:

      <View android:background="#FF000000" android:layout_height="2dp" android:layout_width="fill_parent"/> 

    So bekam ich eine Linie an der Unterseite für meine. Zeichnen Sie einen Strich, aber dann verschieben Sie den Gegenstand auf und zu den Seiten, um die Oberseite und die Seiten zu erhalten, um nicht den Schlaganfall zu zeigen:

     <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:top="-6dp" android:left="-6dp" android:right="-6dp"> <shape> <solid android:color="#2b7996"/> <stroke android:color="#33b5e5" android:width="6dp"/> </shape> </item> </layer-list> 

    Ich denke, es ist eine bessere Lösung:

     <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android" > <item android:gravity="bottom"> <shape> <size android:height="1dp" /> <solid android:color="#000000" /> </shape> </item> </layer-list> 

    In der Regel für ähnliche Aufgaben – Ich habe Layer-Liste wie folgt erstellt:

     <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape android:shape="rectangle"> <solid android:color="@color/underlineColor"/> </shape> </item> <item android:bottom="3dp"> <shape android:shape="rectangle"> <solid android:color="@color/buttonColor"/> </shape> </item> 

    Die Idee ist, dass Sie zuerst das Rechteck mit underlineColor zeichnen und dann oben auf dieses eine zeichnen Sie ein anderes Rechteck mit dem tatsächlichen buttonColor aber, das bottomPadding anwendet. Es funktioniert immer

    Aber als ich brauchte, um ButtonColor zu haben, um transparent zu sein, konnte ich das obige Ziehbares nicht benutzen. Ich fand eine weitere Lösung

     <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape android:shape="rectangle"> <solid android:color="@android:color/transparent"/> </shape> </item> <item android:drawable="@drawable/white_box" android:gravity="bottom" android:height="2dp"/> </layer-list> 

    (Wie Sie hier sehen können, ist die mainButtonColor transparent und white_box ist nur ein einfaches Rechteck,

    Mit dieser Lösung wo immer Sie benötigen unterschiedliche Linie können Sie. Meine Anforderung war nur unterstrichen. Auch können Sie dem Layout verschiedene Farben geben. Sie können unten sehen, weiße Linie Bildbeschreibung hier eingeben

     <?xml version="1.0" encoding="UTF-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:top="-5dp" android:left="-5dp" android:right="-5dp"> <shape> <solid android:color="@android:color/transparent"/> <stroke android:color="@color/white" android:width="5dp"/> </shape> </item> <item android:top="-5dp" android:bottom="-5dp" android:right="-5dp"> <shape> <solid android:color="@android:color/transparent"/> <stroke android:color="@color/colorPrimaryDark" android:width="5dp"/> </shape> </item> <item android:bottom="-5dp" android:left="-5dp" android:right="-5dp"> <shape> <solid android:color="@android:color/transparent"/> <stroke android:color="@color/colorPrimaryDark" android:width="5dp"/> </shape> </item> <item android:top="-5dp" android:left="-5dp" android:bottom="-5dp"> <shape> <solid android:color="@android:color/transparent"/> <stroke android:color="@color/colorPrimaryDark" android:width="5dp"/> </shape> </item> <item android:bottom="2dp" android:left="5dp" android:right="5dp" android:top="5dp"> <shape> <solid android:color="@color/colorPrimary"/> <corners android:bottomRightRadius="0dp" android:bottomLeftRadius="0dp" android:topLeftRadius="0dp" android:topRightRadius="0dp" /> </shape> </item> 

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.