colorAccent或colorSecondary具有材质组件主题

问题描述 投票:0回答:3

[使用Android Studio的向导创建新应用时,将使用派生自Theme.MaterialComponents.Light.DarkActionBar的主题,并设置了colorAccent。另一方面,official documentation使用colorSecondary,根本没有提到colorAccent。两者可以互换吗?喜欢什么?

android android-theme material-components material-components-android
3个回答
1
投票

Theme.MaterialComponents使用colorSecondary,如material guidelinesofficial doc中所述。库中定义的所有组件都使用此属性。

但是在库中还有Bridge themes继承自Bridge themes,如果无法更改主题以继承自Material Components主题,则可以使用它们。这些主题继承自AppCompat themes,为您定义了新的Material Components主题属性。

您可以检查AppCompat themes

bridge theme in the library

在这里您可以找到这些主题的<style name="Base.V14.Theme.MaterialComponents.Light" parent="Base.V14.Theme.MaterialComponents.Light.Bridge"> <!-- Colors --> <item name="colorAccent">?attr/colorSecondary</item> colorSecondary之间的映射。


0
投票

根据材料设计文档,主要颜色和辅助颜色实际上是Android Studio中的primaryColoraccentColor。但是,如果需要更多变化,则可以使用secondaryColor

因此,最好在Android Studio中使用accentColor标签来定义材质设计文档中的辅助颜色。

您可以尝试一些材料调色板,例如colorAccent以了解其行为。


0
投票

[是,我确实相信https://www.materialpalette.comcolorSecondary的新名词,并且可以互换,因为如果您专门阅读colorAccent时,它表示的是第二色的定义

辅助颜色提供了更多方法来accent并区分您的产品。具有辅助颜色是可选的,应该应用很少使用accent选择UI的一部分。

我想只是从该陈述中可以很明显地看出,它们都有相同的目的。

© www.soinside.com 2019 - 2024. All rights reserved.