📌  相关文章
📜  如何在 Android 中使用 Style 构建 Material 和 Dark 主题应用程序?(1)

📅  最后修改于: 2023-12-03 15:08:33.073000             🧑  作者: Mango

如何在 Android 中使用 Style 构建 Material 和 Dark 主题应用程序?

在 Android App 中使用 Style 是构建应用程序界面的常见和有用的技巧。Style 可以定义应用程序中使用的颜色、字体、边框等视觉元素。本文将介绍如何使用 Style 构建 Material 和 Dark 主题应用程序。

Material 主题

Material Design 是 Google 推出的一种视觉设计语言,它帮助开发人员构建具有现代化外观和感觉的应用程序。使用 Material Design 样式的应用程序有以下特点:

  • 具有扁平化的设计元素。
  • 使用大量的半透明元素和渐变来强调UI组件。
  • 强调用户体验和界面的整体一致性。

如果您想利用这种样式来构建应用程序,您可以使用以下步骤:

  1. 创建一个样式

在res/values/styles.xml文件中创建一个新的样式:

<style name="AppTheme" parent="Theme.MaterialComponents.Light.NoActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
</style>

其中parent属性可以引用Material Design提供的样式。在这种情况下,我们引用了 Theme.MaterialComponents.Light.NoActionBar 样式。

  1. 定义颜色

定义颜色在res/values/colors.xml文件中,如下:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="colorPrimary">#3F51B5</color>
    <color name="colorPrimaryDark">#2C3E50</color>
    <color name="colorAccent">#FF4081</color>
</resources>
  1. 设置Activity主题

在AndroidManifest.xml文件中将主题属性设置为你定义的样式,如下:

<activity android:name=".MainActivity"
    android:theme="@style/AppTheme">

在App中通过以上步骤就可以使用Material Design样式了。

Dark 主题

Dark 主题旨在提供一种更为舒适和有用的阅读体验。在夜间模式下使用Dark模式主题不仅会减少眼睛的疲劳,还可以节省电池寿命。

在Android 10及以上发布的版本中,Android中的 夜间模式 功能允许您按照用户的主题首选项或时间表(或根据系统默认设置)自动更改应用程序的主题。下面介绍如何设置 Android App 的 Dark 主题:

  1. 创建一个样式

在res/values/styles.xml文件中创建一个新的样式与之前不太一样:

<style name="AppTheme" parent="Theme.MaterialComponents.DayNight.NoActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
</style>

注意现在样式引用了一个名为 Theme.MaterialComponents.DayNight.NoActionBar 的父样式。

  1. 定义颜色

定义颜色方法与之前相同,res/values/colors.xml文件:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="colorPrimary">#3F51B5</color>
    <color name="colorPrimaryDark">#2C3E50</color>
    <color name="colorAccent">#FF4081</color>
</resources>
  1. 设置Activity主题

在AndroidManifest.xml文件中将主题属性设置为你定义的样式,与之前相同,在这里不再赘述。

在您的应用程序中使用 Dark 主题现在就很简单了。当系统进入Dark模式时,框架将自动应用App使用的 Dark主题。如果您想在 App 中提供一个“全复选框”来允许用户手动更改主题模式,您可以借助SharedPreferences和相应事件从而实现手动更改的功能。

综上,使用 Style 构建 Material 和 Dark 主题应用程序的方法和步骤非常简单。

参考链接:Android Developers 教程