如何为我的应用创建 day/night 模式

how to create day/night mode for my app

我想在我的应用程序中创建一个切换

Day | Night

天被视为默认设置。当用户选择 Night 模式时,我希望所有 UI 元素的所有颜色都为 inverted

以下是我指的元素类型:

  1. UI标签
  2. 按钮
  3. 制表符
  4. 选择器
  5. Window 背景
  6. 所有其他 UI 对象

我试过使用以下方法:

[[UIApplication sharedApplication] keyWindow].tintColor = [UIColor redColor];

这有以下问题:

  1. 这确实会改变应用程序中许多元素的颜色,但不会 全部。例如,它不会改变 UILabels
  2. 的颜色
  3. 它不会反转颜色。它只是改变所有的颜色 对象为特定值。
  4. 不改变window的背景颜色。

这甚至可以通过一些快速的代码实现吗?

您需要使用 UIAppearance 来自定义您的标签、按钮等。 可以看this教程。我认为这可以帮助你。