【问题标题】:Programming for Android 5 without AppCompat没有 AppCompat 的 Android 5 编程
【发布时间】:2015-11-03 16:30:14
【问题描述】:

我了解使用 AppCompat 支持库为 Android 进行编程以实现向后兼容性被认为是一种很好的做法。但是,对于这个特定项目,我要支持的最低 API 级别是 Android 5.0(级别 22)。

但是,我能找到的有关 Lollipop 新功能的所有信息始终指向 AppCompat 支持库。我必须这样做吗,或者是否存在 不需要 AppCompat 主题、类或注意向后兼容性的普通等价物(即简单的 CoordinatorLayout在布局 XML 而不是 android.support.design.widget.CoordinatorLayout)?

【问题讨论】:

  • 支持库迟早会将 API 30 的东西反向移植到棒棒糖中 :-)
  • “但是,我能找到的关于 Lollipop 新功能的所有信息总是指向 AppCompat 支持库”——vast quantities of what came in Android 5.0 与 AppCompat 无关。例如,CoordinatorLayout 与 Android 5.0 无关。它与材料设计切线有关。另请注意,API 级别 22 是 Android 5.1,而不是 5.0。

标签: android android-5.0-lollipop android-appcompat


【解决方案1】:

首先,Andorid 5.0 是 API 21。如果您将 min SDK 设置为 21,则材料设计主题等大多数功能都是默认提供的,您不需要任何库。但我认为 CoordinatorLayout 只存在于 com.android.support:design 库中,您必须包含该库才能使用它。

【讨论】:

    【解决方案2】:

    对于某些功能,您需要使用各种支持库。

    CoordinatorLayout 存在于设计库中,而不是 OS 框架中。

    这实际上非常有用。使用设计库意味着您可以独立于用户设备的操作系统版本使用这些组件。这意味着您无需用户更新其操作系统即可获得更新的功能。

    并且不会因用户运行的操作系统而遇到破坏性的 API 差异。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-02-01
      • 2015-01-02
      • 1970-01-01
      • 1970-01-01
      • 2015-11-12
      • 2015-02-06
      • 2019-10-07
      相关资源
      最近更新 更多