webentwicklung-frage-antwort-db.com.de

Android randlose Tasten

Ich hasse es, die dritte Person zu sein, die dies fragt, aber die vorangegangenen zwei- Fragen schienen es nicht vollständig zu beantworten. Die Android Design-Richtlinien zeigen randlose Tasten , aber nicht, wie sie erstellt werden sollen. In einer der vorherigen Antworten gab es eine Anregung zu verwenden:

style="@Android:style/Widget.Holo.Button.Borderless"

Das funktioniert gut für ein Holo-Thema, aber ich benutze auch viel Holo.Light 

style="@Android:style/Widget.Holo.Light.Button.Borderless"

Scheint nicht zu existieren Gibt es eine Möglichkeit, einen Stil für solche randlosen Schaltflächen in Holo.Light anzuwenden, oder besser noch, verwenden Sie einfach ein randloses Tag, ohne anzugeben, zu welchem ​​Thema es gehört.

Holo.ButtonBar scheint genau das zu sein, wonach ich suche, außer dass es keine Rückmeldungen von Anwendern gibt, dass es gedrückt wurde.

Gibt es auch einen Platz in der Dokumentation, in dem die anwendbaren Stile aufgeführt sind und eine Beschreibung davon? Egal wie viel ich google und die Dokumente durchsuchen, ich kann nichts finden. Es gibt nur eine nicht beschreibende Liste, wenn ich mit der rechten Maustaste klicke und den Stil bearbeite.

Jede Hilfe wäre dankbar.

Edit: Ich habe eine perfekte Antwort von Javram erhalten, und ich wollte XML für alle hinzufügen, die daran interessiert sind, die von google übernommenen Teilgrenzen hinzuzufügen.

Ein horizontaler Teiler, das funktioniert super

<View
    Android:id="@+id/horizontal_divider_login"
    Android:layout_width="match_parent"
    Android:layout_height="1dp"
    Android:layout_marginLeft="8dp"
    Android:layout_marginRight="8dp"
    Android:background="@color/holo_blue" />

und dies für eine vertikale:

<View
     Android:id="@+id/vertical_divider"
     Android:layout_width="1dip"
     Android:layout_height="match_parent"
     Android:layout_marginBottom="8dp"
     Android:layout_marginTop="8dp"
     Android:background="@color/holo_blue" />
24
The Holo Dev

Überprüfen Sie meine Antwort hier . Kurz gesagt, die richtige Lösung ist, Folgendes zu verwenden:

Android:background="?android:attr/selectableItemBackground"
27
Paul Drummond

Fügen Sie einfach das folgende style-Attribut in Ihr Button-Tag ein:

style="?android:attr/borderlessButtonStyle"

quelle: http://developer.Android.com/guide/topics/ui/controls/button.html#Borderless

42
Diego V

Dieser Code entfernt den gesamten Hintergrund für eine Schaltfläche:

Android:background="@Android:color/transparent"
8
javram

Auf die Gefahr hin, ein totes Pferd zu schlagen, ist hier eine weitere (möglicherweise bessere) Option. AppCompat v7 definiert einen randlosen Schaltflächenstil. Wenn Sie die AppCompat-Bibliothek bereits nutzen, gehen Sie einfach dazu:

<Button Android:text="@string/borderlessButtonText" style="@style/Widget.AppCompat.Button.Borderless" />

8
wtracy

Nur wenn jemand auf der Suche nach einer leichten Lösung ist, um den randlosen Button für die APIs zu erhalten, die das Holo-Thema nicht unterstützen (wie ich es schon lange getan habe).

<View 
    Android:layout_height="1dp"
    Android:layout_width="match_parent"
    Android:background="#505154"
    Android:layout_marginLeft="10dp" Android:layout_marginRight="10dp"/>

<LinearLayout
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content" >

    <Button
        Android:id="@+id/btn_Reply"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:layout_gravity="center"
        Android:layout_weight="1"
        Android:background="@Android:color/transparent"
        Android:paddingBottom="15dp" Android:paddingTop="15dp"
        Android:textColor="#5c5966"
        Android:text="@string/btnReplyText"/>

    <View 
        Android:layout_height="fill_parent"
        Android:layout_width="1dp"
        Android:background="#505154" 
        Android:layout_marginBottom="7dp" Android:layout_marginTop="7dp"/>

    <Button
        Android:id="@+id/btn_Delete"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:layout_gravity="center"
        Android:layout_weight="1"
        Android:paddingBottom="15dp" Android:paddingTop="15dp"
        Android:textColor="#5c5966"
        Android:background="@Android:color/transparent"
        Android:text="@string/btnDeleteText" />

    <View 
        Android:layout_height="fill_parent"
        Android:layout_width="1dp"
        Android:background="#505154"
        Android:text="@string/btnReplyText"
        Android:layout_marginBottom="7dp" Android:layout_marginTop="7dp" />

    <Button
        Android:id="@+id/btn_Exit"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:layout_gravity="center"
        Android:text="@string/btnExitText"
        Android:paddingBottom="15dp" Android:paddingTop="15dp"
        Android:textColor="#5c5966"
        Android:background="@Android:color/transparent"/>
</LinearLayout>

Sie müssen lediglich die Farben und den Text an Ihren eigenen Hintergrund anpassen. Alles Gute!

1
Anirudh