Android设计支持库和材料设计向后兼容性?

时间:2015-05-30 19:16:20

标签: android android-support-library material-design android-appcompat android-design-library

我是新来的,所以请耐心等待! 我对新的设计支持库(以及如何实现支持库)感到困惑,我有两个问题:

  • 我对如何实现支持库感到困惑。它是否就像说“如果操作系统版本低于5.0版本,使用V7支持库”,或者我需要编写'Alternative Layout'(一个用于运行+5.0的设备,一个用于运行旧设备的设备) android的版本?)
  • 设计支持库是否替换添加 V7支持库? (如果我想在应用程序中包含卡片和小吃店,我是否可以使用设计支持库或者我必须将它与v7 cardview库一起使用?我知道这是一个愚蠢的问题,但我只想确定。)

非常感谢!

2 个答案:

答案 0 :(得分:4)

您可以使用support libraries将最后一个api(例如21)引入的一些功能反向移植到运行先前api级别的旧设备。

例如,API21引入了一个新的小部件Toolbar。此小组件只能在API> = 21。

的设备中使用

使用appcompat rel.21(v7支持库),您可以使用Toolbar(注意软件包)在运行API> = 7的旧设备中实施工具栏。

这可能是因为支持库包含在你的apk中。

Design Support Library是一个添加新功能的新库。 它包含Snackbar,TextInputLayout,FloatingActionButton等视图,但它不包含Card。

因此,请将此依赖项用于设计支持库:

compile 'com.android.support:design:22.2.0'

此依赖关系使用AppCompat库

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

官方CardView的这种依赖

compile 'com.android.support:cardview-v7:22.2.0'

查看官方文档以获取更多信息。

答案 1 :(得分:0)

  

我对如何实施支持库感到困惑。它是否就像说“如果操作系统版本低于5.0版本”,使用V7支持库'或者我必须编写“替代布局”(一个用于运行的设备) +5.0,一个用于运行旧版android的设备?)

库为您提供了Lollipop(和pre-M)设备与其中包含的视图的兼容性。

  

设计支持库是否替换或添加V7支持库? (如果我想在应用程序中包含卡片和小吃店,我是否可以使用设计支持库或者我必须将它与v7 cardview库一起使用?我知道它' sa愚蠢的问题,但我只是想确定。)

添加到。设计支持库包含一些独特的视图,有助于实现完美的物化"应用程序。对于RecyclerView,CardView,Palette等,您必须使用其单独的支持库。 E.g:

compile 'com.android.support:appcompat-v7:22.2.0'
compile 'com.android.support:cardview-v7:22.2.0'
compile 'com.android.support:recyclerview-v7:22.2.0'
compile 'com.android.support:design:22.2.0'