Android Support 兼容包详解

发布于 2024-06-26 05:54:47 字数 2462 浏览 23 评论 0

来自于知乎上邀请回答的一个问题 Android 中 AppCompat 和 Holo 的一个问题? , 看来很多人还是对这些兼容包搞不清楚,那么干脆写篇博客吧.

Support Library

我们都知道 Android 一些 SDK 比较分裂,为此 google 官方提供了 Android Support Library package 系列的包来保证高版本 sdk 开发的向下兼容性, 所以你可能经常看到 v4,v7,v13 这些数字,首先我们就来理清楚这些数字的含义,以及它们之间的区别。

support-v4

用在 API lever 4(即 Android 1.6) 或者更高版本之上。它包含了相对更多的内容,而且用的更为广泛,例如:Fragment,NotificationCompat,LoadBroadcastManager,ViewPager,PageTabStrip,Loader,FileProvider 等

Gradle 引用方法:

compile 'com.android.support:support-v4:21.0.3'

support-v7

这个包是为了考虑 API level 7(即 Android 2.1) 及以上版本而设计的,但是 v7 是要依赖 v4 这个包的,v7 支持了 Action Bar 以及一些 Theme 的兼容。

Gradle 引用方法:

compile 'com.android.support:appcompat-v7:21.0.3'

support-v13

这个包的设计是为了 API level 13(即 Android 3.2) 及更高版本的,一般我们都不常用,平板开发中能用到,这里就不过多介绍了。

Theme

回到知乎上的这个问题,我们来介绍下各种 Theme 的概念。

Hoho Theme

在 4.0 之前 Android 可以说是没有设计可言的,在 4.0 之后推出了 Android Design,从此 Android 在设计上有了很大的改善,而在程序实现上相应的就是 Holo 风格,所以你看到有类似 Theme.Holo.LightTheme.Holo.Light.DarkActionBar 就是 4.0 的设计风格,但是为了让 4.0 之前的版本也能有这种风格怎么办呢?这个时候就不得不引用 v7 包了,所以对应的就有 Theme.AppCompat.LightTheme.AppCompat.Light.DarkActionBar,如果你的程序最小支持的版本是 4.0,那么可以不用考虑 v7 的兼容。

Material Design Theme

今年的 5.0 版本,Android 推出了 Material Design 的概念,这是在设计上 Android 的又一大突破。对应的程序实现上就有 Theme.Material.LightTheme.Material.Light.DarkActionBar 等,但是这种风格只能应用在在 5.0 版本的手机,如果在 5.0 之前应用 Material Design 该怎么办呢?同样的引用 appcompat-v7 包,这个时候的 Theme.AppCompat.LightTheme.AppCompat.Light.DarkActionBar 就是相对应兼容的 Material Design 的 Theme。

注意事项

  • gradle 引用 appcompat-v7 包的时候就不需要引用 v4 了,因为 v7 里默认包含了 v4 包;
  • compile 'com.android.support:appcompat-v7:21.0.3' ​ 中的 21 代表 API level 21 推出的兼容包,所以如果你引用的是 21 之前的版本,则默认这些Theme.AppCompat.Light 是 Holo 风格的,从 21 开始的版本默认是 Material 风格
  • 使用 appcompat 之后,你的所有的 Activity 应该继承自 ActionBarActivity,而 ActionBarActivity 继承自 FragmentActivity,所以放心的使用 Fragment;

最后,相信已经讲的很清楚了,大家有问题可直接博客留言。如果英语好的,可直接移步官方最权威的解释 https://developer.android.com/tools/support-library/features.html

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

等风来

暂无简介

0 文章
0 评论
22 人气
更多

推荐作者

我们的影子

文章 0 评论 0

素年丶

文章 0 评论 0

南笙

文章 0 评论 0

18215568913

文章 0 评论 0

qq_xk7Ean

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文