如何使用Material Design组件在Android中建立对深色主题的支持

如何使用Material Design组件在Android中建立对深色主题的支持

主题在创造引人入胜的应用程序体验中起着至关重要的作用。每个移动应用用户的设计偏好都是独特的。主题使您可以创造性地解决这种独特性。黑暗主题最近已成为大多数年龄段的应用程序用户中的流行选择。 Android在版本10中添加了用户可选的深色主题。但是,深色主题对于Android来说并不是新事物。在Lollipop(Android 5.0)之前,Android操作系统的默认主题为深色。

在此博客文章中,我们将讨论如何在Android应用程序中建立对深色主题的支持。与深色主题的兼容性可能会使您 Android应用程式开发 项目更令人着迷。

为什么深色主题支持很重要
您的应用出于多种原因需要支持深色主题。好处从设计元素到用户参与不等。深色主题会降低设备屏幕发出的亮度。深色主题还可以通过减少眼睛疲劳并根据当前照明条件调整亮度来改善功能设计。它们通过在黑暗环境中方便屏幕使用来节省电池。

除了上述所有优点之外,深色主题还有另一个关键优势:应用程序用户喜欢深色主题。实际上,Android成为用户要求最多的功能之一后,就添加了全系统深色主题设计。

将深色主题添加到您的应用
使用材质设计组件(MDC)将深色主题添加到您的应用程序涉及多个步骤。

改变你的主题
首先,您需要更改主题以扩展为“ Theme .MaterialComponents .DayNight”主题之一。这是代码:

<style name=”Theme.MyApp”
       父母=”Theme.MaterialComponents.DayNight”>    <!–其他主题属性–></style>

选择应用程序模式
选择主题的模式是可选的。但是,它使您能够支持在Android 10之前的版本上运行的设备。大多数智能手机没有系统级深色主题设置。因此,应用程序可以提供其应用程序内设置,以允许用户根据应用程序选择特定主题。

测试黑暗主题
创建深色主题的基础后,您需要通过在浅色和深色主题模式下检查应用程序的每个部分来对其进行测试。测试时,请在深色背景上寻找任何深色测试。另外,请注意与深色背景对比度不足的硬编码颜色。

物质黑暗主题的特征

灰色vs.黑色
深色主题中的Android应用程序的默认背景是深灰色,而不是黑色。这已经激起了灰色与黑色的争论。简短的解释是,深灰色会在应用程序可用性和节能之间进行权衡。

如果您在平台上使用纯黑色作为背景,则当它们在OLED显示屏上打开时,系统消耗的功率最少。但是,在应用程序上使用此功能时,情况有所不同。应用程序使用复杂的炫彩矢量动画,明亮的图像和对比鲜明的表面等。

调色板
通常,您会基于浅色或白色背景的假设来选择调色板。因此,您需要对调色板进行一些调整,以便在黑暗主题下运行应用程序。

物料颜色系统
材质颜色系统对于深色主题的整体外观至关重要。该系统将颜色定义为每种颜色内的一系列色调。

colorPrimary
应用程序的原色是背景和表面颜色以外显示最多的颜色。您需要确保在深色主题中原色清晰可见。

colorSecondary
创建第二色的过程与原色相同。您可以使用较低饱和度和明亮度的色调来创建它。但是,基线材质的深色主题对colorSecondaryVariant的处理有些不同。

表面颜色
您可以使用深色表面在卡片等常见组件中表达您的设计或品牌。但是,这种粗体颜色的可读性通常不是最佳的。如果用户将设备或应用程序设置为深色主题,则应用程序应将其视为希望降低亮度的用途。

黑暗主题中的高程叠加
材质系统中的阴影是由多个光源创建的。使用高程提升表面时,将其朝着光源提升。当这些光源被表面阻挡时,会出现阴影。此外,表面越靠近光,表面照明越多。

小部件支持& Custom Views
物料设计组件支持立面图。其中包括顶部应用程序栏,底部应用程序栏和导航抽屉。因此,标准高程API会自动应用高程叠加层。

您还可以为应用创建自定义视图。高程叠加层支持内置于“ MaterialShapeDrawable”中。

包起来
深色主题支持开发过程使您可以为应用程序用户创建更具吸引力的应用程序体验。它还可以帮助您提高自己作为Android应用程序开发人员的技能。去年,Android添加了设备范围的设置。它使用户可以更好地控制设备的主题。

在领先的应用程序开发公司Android Developer上,我们的团队使用一流的设计工具为应用程序创建深色主题。我们大多数的客户 雇用Android开发人员 满足我们广泛的发展要求。关注我们的博客以随时了解Android的所有信息。

常见问题

问:构建一个Android应用程序需要花费多少钱?
Android移动应用程序的开发成本取决于您所需的应用程序类型。具有基本设计和简单功能的应用程序的成本较低。如果您需要具有更高级功能的高性能应用程序,则成本会相对较高。我们为每种应用程序提供有竞争力的价格。

问:开发Android应用程序需要多长时间?
Android移动应用程序的开发时间取决于您的要求。如果您的要求是有限的并且是预定义的,则花费的时间相对较少。我们在真正的短时间内构建设计丰富的移动应用程序。

问:使用什么技术来开发移动应用程序?
Android应用程序开发人员主要使用Java和Kotlin创建移动应用程序。移动应用开发中使用的其他技术包括Swift, ,PhoneGap和React Native。