我想使用Material主题为我的应用程序和目标从Jelly Bean到" M"。
正确的建议是什么? 1.在21以下的api级别使用appcompat主题,并在21及以上使用标准材料 2)只需在所有api级别上使用appcompat。
如果我只是在所有API级别上使用appcompat,我会遗漏任何东西吗?
答案 0 :(得分:2)
将AppCompat用于所有内容,如果您使用的话,还有内置的功能来处理< 21或> = 21。
真的唯一一次你应该使用标准材质主题是你支持的基础API是21+,但即便如此,你最终会使用app compat来添加新的东西
答案 1 :(得分:2)
您只能使用AppCompat主题。对于大多数样式,他们有自己的实现模仿更现代的方法。对于那些无法模仿的东西,他们只是不做它或者移动到默认值(想到的是Ripple效果.21 +设备将使用Ripple,但在其他设备上它将默认为标准按钮选择器)。如果他们可以使用原生方法,那么他们将使用这些方法。
但在某些情况下,您可能需要创建包含特定API级别所特有的属性的样式。在这种情况下,您需要创建一个layout-v##
文件夹,其中##
是要支持的API级别。然后输入与下layout
文件夹中的名称相同的样式。 Android会选择合适的文件夹。对于任何其他资源文件夹也可以这样做。