Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 材料组件主题的描述?_Android_Themes_Material Components - Fatal编程技术网

Android 材料组件主题的描述?

Android 材料组件主题的描述?,android,themes,material-components,Android,Themes,Material Components,我目前正在开始学习材质组件主题。该指南提到了以下主题: Theme.MaterialComponents Theme.MaterialComponents.NoActionBar Theme.MaterialComponents.Light Theme.MaterialComponents.Light.NoActionBar Theme.MaterialComponents.Light.DarkActionBar Theme.MaterialComponents.DayNight Theme.M

我目前正在开始学习材质组件主题。该指南提到了以下主题:

Theme.MaterialComponents
Theme.MaterialComponents.NoActionBar
Theme.MaterialComponents.Light
Theme.MaterialComponents.Light.NoActionBar
Theme.MaterialComponents.Light.DarkActionBar
Theme.MaterialComponents.DayNight
Theme.MaterialComponents.DayNight.NoActionBar
Theme.MaterialComponents.DayNight.DarkActionBar
但是没有关于它们的描述。我在哪里可以找到关于这些主题的更多细节,或者任何人都可以在回答中解释它们吗?举个例子:

  • 什么意思是
    […].NoActionBar
    ?如果我不想要一个动作栏,我不会把它包含在我的布局文件中,所以我真的不明白这个
  • 我什么时候只使用
    主题.MaterialComponents
    ?或者我总是使用
    Theme.MaterialComponents.Light
    还是
    Theme.MaterialComponents.DayNight
  • 这些主题看起来怎么样?我找不到任何预览版,也不想自己一个人尝试所有这些功能——在Android上使用所有可用的小部件可能需要一些时间
  • 这些主题定义了什么?只有颜色?文本样式?字体系列

  • 我相信我不会详尽地回答你所有的问题,但我会分享一些想法,也许这会让你更进一步:

    什么是[…]无操作栏

    如果您不希望运行时向
    活动添加
    操作栏
    ,则应该使用以“.NoActionBar”结尾的主题,这可能是因为您使用了
    工具栏
    。如果您选择例如
    主题.MaterialComponents.Light
    并同时使用
    工具栏
    ,您会注意到现在您的应用程序将呈现两个
    操作栏
    s

    请注意,如果某个主题被称为“MyTheme”,那么前缀为“MyTheme”的主题将继承“MyTheme”的所有内容。因此
    Theme.MaterialComponents.Light.NoActionBar
    几乎与
    Theme.MaterialComponents.Light
    相同,除了
    ActionBar

    因此,如果您确实不需要任何
    操作栏
    ,则应选择
    .NoActionBar
    版本,并且不要在布局文件中包含代理(
    工具栏

    这些主题定义了什么?只有颜色?文本样式?字体系列

    他们这样做,但他们也定义了大小、边距和行为。除此之外,它们中的一些具有特定小部件的特殊样式组合(如
    style=“@style/Widget.MaterialComponents.TextInputLayout.FilledBox”
    用于
    TextInputLayout

    要深入了解主题会影响哪些属性,可以查看主题的来源

    什么时候我只使用Theme.MaterialComponents?或者我总是使用Theme.MaterialComponents.Light还是Theme.MaterialComponents.DayNight

    由于
    Theme.MaterialComponents
    Theme.MaterialComponents.Light
    的父主题,因此它们有很多共同点。主要区别在于,第一个假设你的应用程序的背景是黑色的(因此文本应该是白色的),而第二个假设你的应用程序的背景是黑色的

    通常,人们会尝试使用某个主题作为模板,然后可以/必须进行自定义-例如使用特殊的强调色

    这些主题看起来怎么样

    您可以在自己的一个小示例应用程序中从一个切换到另一个,从而获得总体想法

    的确,没有一个单一的信息来源(又称android主题圣经)。你已经找到了,但也许这篇博客文章的部分会有更多的亮点。

    lol“在你的应用程序中添加一个黑色主题会有更多亮点”