2014-01-20 25 views
40

Kann mir jemand sagen, wann Checkbox und wann Switch zu verwenden?Wann CheckBox zu verwenden ist und wann Switch

Ich meine, was ist der wahre Login-Unterschied zwischen den beiden im Zusammenhang mit einer PreferenceActivity?

Zum Beispiel ändern Sie den nächsten Abschnitt zu Checkboxes? Es ist Teil eines Sets, aber die Verwendung eines Schalters hier sieht besser aus.

enter image description here

+1

Ich würde sagen, Kontrollkästchen für die Auswahl mehrerer verknüpfter Elemente in einer Liste von verwandten Einstellungen verwenden und wechseln, wenn das Element unabhängig von anderen ist. Aber das bin nur ich. Ich denke, am Ende kommt es darauf an, was für Sie (und natürlich Ihre Nutzer) Sinn macht. Gute Frage, +1. – 2Dee

Antwort

40

Ich finde eigentlich die ganz eine interessante Frage sein, vor allem in Anbetracht, dass man leicht eine Checkbox in Android die Funktion eines Schalters emulieren kann mit.

Laut dem Android-Handbuch für Entwickler ist ein Kontrollkästchen einfach eine Art von Schalter. Überprüfen Sie die folgenden Zitate oder lesen Sie die vollständige Beschreibung here.

Ankreuzfelder: Ankreuzfelder ermöglichen es dem Benutzer zu mehrere Optionen aus einer Gruppe auswählen. Vermeiden Sie die Verwendung eines einzelnen Kontrollkästchens, um eine Option ein- oder auszuschalten. Verwenden Sie stattdessen einen Ein/Aus-Schalter.

Ein/Aus-Schalter: Ein/Aus-Schalter schalten Sie den Zustand eines einzelnen Einstellungen Option.

+0

OMG !!!, beide Fragen und Antworten sind 38 upvotes –

+0

Es ist wichtig zu beachten, dass für eine Reihe von Kontrollkästchen, eine zusätzliche Schaltfläche "Senden" oder "Speichern" erforderlich ist, um den Abschluss zu markieren. Schalter sind jedoch sofort mit sofortiger Wirkung. – AjitZero

4

Nachdem im Anschluss an die Settings Option in Android-Gerät, meiner Meinung nach für Unterschied zwischen Checkbox und Schalter ist, dass:

  1. CheckBox sind in der Regel verwendet,/markieren die jeweilige Einstellung in den Dienst Markierung entfernen.
  2. Schalter dienen zum Ein- und Ausschalten der jeweiligen Dienste.

Möglicherweise deshalb checkbox als Teilmenge/Art der switch behandelt werden, da sie erlauben, sich innerhalb des Dienstes eine Option zu markieren/nicht markieren (nicht der gesamte Service).

7

Haftungsausschluss Ich bin kein UX Experte.

Außer dem, was @KentHawkings hat bereits cited von Google design guidelines (Kontrollkästchen für die Liste der nicht-exklusiver Optionen und Schalter für eine einzige Option), gibt es eine gute ist (IMHO) für eine einzige Option Fall für Checkbox verwenden - wenn das Kontrollkästchen bedeutet eindeutig ja/nein.

Gute Idee für das Kontrollkästchen: "Benachrichtigungen anzeigen" -Option.

Schlechte Idee für Checkbox: "Wi-Fi" -Option (wie in Android-Einstellungen).
Sie könnten das Kontrollkästchen hier verwenden, wenn diese Option den Titel "Wi-Fi ist aktiviert" hat, aber ganz offensichtlich "Wi-Fi" mit "On/Off" Schalter ist prägnanter.

Beachten Sie, dass Google Play Market nicht der Google-Richtlinie folgt - es verwendet überall Checkboxen in den Einstellungen.

+3

Google Play hat einen wirklich guten Grund, dies zu tun. Es muss kompatibel und konsistent über alle Android-Geräte bis hin zu alten API-Leveln (wie Android 2.3) sein. [Schalter] (https://developer.android.com/reference/android/widget/Switch.html) und [Präferenzen wechseln] (https://developer.android.com/reference/android/preference/SwitchPreference.html) wurden in API-Ebene 14 hinzugefügt] und Switch-Einstellungen sind nicht in der Support-Bibliothek enthalten, die auf API-Ebene 9 funktioniert. Ich habe eine [Third-Party-Bibliothek dafür] gefunden (https://github.com/yongjhih/SwitchPreferenceCompat) Habe es aber nicht probiert. – cuddlecheek

+0

@cuddlecheek Ich denke, es gibt ein paar fähige Programmierer bei Google, die entweder ** 1. ** Schalter hinzufügen können, um lib v7 oder ** 2 zu unterstützen. ** Implementieren Sie Schalter als benutzerdefinierte Widgets in Play app :-P –

+2

Natürlich könnten sie das tun, aber ich nehme an, Google Play App und Support-Bibliothek werden von verschiedenen Teams entwickelt. Ich gehe also davon aus, dass das Google Play-Team sich nicht darum gekümmert hat, Switches zur Unterstützung von Library v7 hinzuzufügen und es wahrscheinlich nicht so wichtig fand, es selbst zu implementieren. Ich würde sagen, wenn sie anfangen würden, die App für API 14+ zu entwickeln, würden sie Switch an geeigneten Stellen verwenden. – cuddlecheek

0

CheckBox bedeutet, es ist ein Umschalter und nur ein Umschalter. Schalter bedeutet, dass es ein Schalter ist und wenn Sie auf den Textbereich (Titel und Zusammenfassung) klicken, sollten einige weitere Einstellungen Fenster erscheinen.