【问题标题】:When to use CheckBox and when Switch何时使用 CheckBox 何时使用 Switch
【发布时间】:2014-02-09 11:11:07
【问题描述】:

谁能告诉我什么时候使用Checkbox,什么时候使用Switch

我的意思是,在PreferenceActivity 的上下文中,两者之间的真正登录区别是什么?

例如,您会将下一部分更改为Checkboxes 吗?它是套装的一部分,但在这里使用 Switch 看起来更好。

【问题讨论】:

  • 我会说使用复选框来选择相关首选项列表中的多个链接项目,并在项目独立于其他项目时切换。但这只是我。我想最终归结为对您(当然还有您的用户)有意义的事情。好问题,+1。

标签: android checkbox android-preferences preferenceactivity


【解决方案1】:

我实际上发现这是一个非常有趣的问题,特别是考虑到在 Android 中使用复选框可以轻松模拟开关的功能。

根据 Android 开发人员指南,复选框只是一种开关。检查下面的引用或阅读完整描述here

复选框:复选框允许用户从一组选项中选择多个选项。避免使用单个复选框来关闭或打开选项。相反,请使用开/关开关。

开/关开关:开/关开关切换单个设置选项的状态。

【讨论】:

  • 需要注意的是,对于一组复选框,需要一个额外的“提交”或“保存”按钮来标记完成。然而,切换是即时的,立即生效。
  • @AjitZero:风格指南没有这么说,也不符合实际。
【解决方案2】:

免责声明我不是用户体验专家。

除了 @KentHawkings 已经从 Google 的 design guidelines 获得了 cited (用于非排他选项列表的复选框并切换为单个选项)之外,单个选项的复选框还有一个很好的(恕我直言)用例 -当复选框明确表示是/否时。

复选框的好主意:“显示通知”选项。

复选框的坏主意:“Wi-Fi”选项(如在 Android 设置中)。
如果此选项的标题为“Wi-Fi 已启用”,您可以在此处使用复选框,但很明显,带有“开/关”开关的“Wi-Fi”更简洁。

请注意,Play 市场不遵循 Google 自己的指导方针 - 它在其设置中到处使用复选框。

【讨论】:

  • Google Play 这样做有一个非常好的理由,它需要在所有 Android 设备上兼容并保持一致,回到古老的 API 级别(如 Android 2.3)。 Switchesswitch preferences 已添加到 API 级别 14] 并且开关首选项不包含在适用于 API 级别 9 的支持库中。我找到了 third-party library for that,但还没有尝试过。
  • @cuddlecheek 我想,Google 有几个能干的程序员,他们可能希望 1. 添加开关以支持 lib v7 或 2。 在 Play 应用程序中将开关作为自定义小部件实现:-P
  • 他们当然可以这样做,但我想 Google Play 应用程序和支持库是由不同的团队开发的。所以我认为 Google Play 团队没有费心组织添加开关以支持库 v7,并且可能没有发现自己实现它如此重要。我想说,如果他们开始为 API 14+ 开发应用程序,他们会在适当的地方使用 switch。
【解决方案3】:

在android设备中遵循Settings选项后,我对复选框和开关之间的区别的看法是:

  1. CheckBox 通常用于标记/取消标记服务中的特定设置。
  2. 开关用于打开/关闭特定服务。

可能这就是为什么checkbox 被视为switch 的子集/类型,因为它们允许在服务本身(而不是整个服务)中标记/取消标记选项。

【讨论】:

    【解决方案4】:

    CheckBox 表示它是一个切换,并且只是一个切换。 开关意味着它是一个切换,如果您单击文本区域(标题和摘要),应该会弹出更多设置窗口。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-01
      • 2011-07-21
      • 2021-10-13
      相关资源
      最近更新 更多