繁体   English   中英

在明暗主题之间切换

Switching between light and dark theme

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我正在关注为我的一个应用程序实现浅色和深色主题的文章。 该文章可以在这里找到。 在本文中,一种有趣的方法用于一次编辑所有颜色,因此无需分别更改所有标签,背景等。 新主题设置如下:

private func setNewTheme(_ newTheme: AppTheme) {
    let window = UIApplication.shared.delegate!.window!!
    UIView.transition(
        with: window,
        duration: 0.3,
        options: [.transitionCrossDissolve],
        animations: {
            self.theme.value = newTheme
        },
        completion: nil
    )
}

我建议阅读文章以了解此机制的整个工作原理。 这很好用,可以更改我的背景,UITabBar的颜色,UINavigationController的颜色等。但是,在某些UIViewControllers中,还有一个UICollectionView我也想更新。 颜色保持不变,但是我想我需要重新加载数据才能正常工作?

我的问题是; 设置其他主题后,如何实现将UICollectionViews重新加载的功能?

如果我提到的文章不是最佳实践,请指导我实现实现此功能的最佳方法。

1 个回复

这里 我认为该回购协议可以给您一些建议。

1 Android 主题属性在浅色和深色之间部分切换

我正在为我的应用程序构建一个浅色/深色主题。 我想为应用程序中的所有按钮使用自定义形状。 但是在主题之间交换时, colorAccent属性不会交换为按钮背景颜色。 在灯光模式下, colorAccent为橙色,显示为橙色。 但是在深色模式下, colorAccent是紫色但仍然显示橙色 ...

2 在明暗主题之间切换

好的,现在我正在存储用户当前在localStorage使用的主题,当页面加载时,我会检查并显示浅色或深色主题: 上面的代码按照它的意图工作,但我面临的问题是当用户选择深色主题时,他们仍然会在页面加载的瞬间看到浅色主题。 有谁知道我该如何解决这个问题,或者我是否应该尝试不同的方法? ...

4 在深色/浅色样式覆盖之间切换

我想将一些基于theme.type图标的颜色覆盖为本机PaletteColor 。 我可以检查type并有条件地设置颜色,如下所示: const useStyles = makeStyles((theme: Theme) => createStyles({ someIcon: { ...

6 Wordpress:读者在浅色和深色主题之间切换

嗨,我想创建一个按钮,允许读者在我的 wordpress.org 网站上在浅色(默认)和深色主题模式之间切换。 我已经使用简单的 css 插件为我的黑暗主题创建了一个按钮短代码和所需的 csscode,但不知道如何将它们关联在一起。 我对 wordpress 很陌生,因此不知道该怎么做。 如果有人 ...

8 Vuetify 在明暗主题之间切换(使用 vuex)

所以在我的 Vue 项目中,我基本上有两个页面/组件,它们将根据 url 使用 vue-router 显示。 我可以通过按钮在这些页面/组件之间切换。 我也在使用 vuex 来管理一些数据。 现在我在其中一个组件中加入了一个开关,用于在 vuetify 的深色和浅色主题之间切换。 在此组件的模板 ...

9 浅色/深色主题切换

我正在尝试创建一个 HTML 页面,在单击按钮时,主题从深色变为浅色。 我的问题是菜单图标。 如果更改为深色主题,然后打开和关闭菜单,则显示的浅色和深色主题菜单图标或弹出菜单内部不会显示任何内容,甚至是关闭菜单的菜单图标。 我在这里做错了吗? ...

10 有深色/浅色Leanback主题吗?

我正在启动一个Android TV应用程序,希望为最终支持黑暗模式做准备,是否有LeanBack主题,例如Theme.MaterialComponents.DayNight ? 否则,这里正确的方法是什么? 谢谢, ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2021 STACKOOM.COM