Open-Side-Android-Hub?
Ist es möglich, erstellen Sie ein Android-shape-Objekt mit einem Schlaganfall nur auf bestimmten Seiten?
Ich z.B.:
<stroke
android:width="3dip"
android:color="#000000"
android:dashWidth="10dip"
android:dashGap="6dip" />
Das ist ähnlich wie das CSS:
border: 3px dashed black;
Wie kann ich einstellen, dass der Strich nur eine Seite? Dies ist, wie ich es tun würde, CSS:
border-left: 3px dashed black;
Wie machen Sie das in Android XML?
InformationsquelleAutor der Frage Reed Morse | 2010-03-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Erzielte ich eine gute Lösung mit diesem:
Funktioniert dies auch im Fall benötigen Sie eine transparenten hintergrund aber immer noch eine open-Hub-Farbe (In meinem Fall brauchte ich nur eine untere Linie). Wenn Sie eine Hintergrundfarbe, die Sie hinzufügen können, eine Feste Form, die Farbe, wie in Maragues Antwort.
BEARBEITEN 1
Manchmal, für High-Density-Geräte, mit low-dip-Werte können am Ende in sehr dünne oder unsichtbare Striche oder Entfernungen. Dies kann geschehen, um Sie auch bei der Einstellung ListView-Teiler.
Die einfachste Lösung ist die Verwendung ein Abstand von 1px statt 1dp. Dadurch wird die Zeile immer sichtbar auf allen dichten. Die beste Lösung würde sein, die dimension Ressourcen für jede Dichte, um die beste Größe für jedes Gerät.
Edit 2
Spaß, aber ich habe versucht, dies 6 Jahre später und ich kann nicht zu einem guten Ergebnis kommen auf Lollipop-Geräte.
Wohl die aktuelle Lösung ist die Verwendung von 9-patch. Sollte Android haben eine einfache Lösung für dieses problem nach all dieser Zeit.
InformationsquelleAutor der Antwort htafoya
Ich löste dies durch die Verwendung einer Liste-layer-Kombination von zwei Formen, von denen der eine mit der Höhe, 1dp an der Unterseite angebracht
optionscreen_bottomrectangle.xml:
Dann, in der layout/main.xml Datei
Füllt die Lücke zwischen table_options und exit_bar mit einem hintergrund und nur vor exit_bar druckt eine 1dp Linie. Dies hat den trick für mich, ich hoffe es hilft jemand anderem.
Antwort bearbeitet werden, um Platz Schichten in der richtigen Reihenfolge. Thx Alex!
InformationsquelleAutor der Antwort Maragues
Anderes nehmen auf die anderen Antworten mit Polsterung statt. Dieses kleine snipplet macht einen Rand oben und unten.
InformationsquelleAutor der Antwort ug_
Ich weiß, diese Frage wurde gepostet, vor langer Zeit, so dass die Antwort nicht von der person genutzt werden, die gepostet diese Frage, aber es kann immer noch anderen helfen.
Verwenden Sie die
inset
- tag und geben Sie einen negativen Wert für die seitliche Grenze, die Sie entfernen möchten.Die möglichen Werte sind:
android:insetTop="-1dp"
android:insetBottom="-1dp"
android:insetLeft="-1dp"
android:insetRight="-1dp"
InformationsquelleAutor der Antwort Nirmal Dhara
@Maragues die Antwort ist nach hinten, als layer-Liste drawables ziehen von oben nach unten (also das Letzte Element in der Liste gezeichnet wird, auf die Oberseite):
Diese effektiv füllen die Form mit der Farbe der Linie, dann zeichnen Sie die hintergrund-Farbe auf die Oberseite, verlassen die letzten 1dp klar für die Linie, Farbe zu zeigen, durch.
InformationsquelleAutor der Antwort Alex Pretzlav
InformationsquelleAutor der Antwort sunny
Habe ich verwendet folgenden code.
InformationsquelleAutor der Antwort SeniorCoder