问题标签 [ios-darkmode]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - 比较两个 UIColor DynamicProvider (iOS13) 返回 False
Xcode 11 / iOS 13
当我使用初始化 2 UIColor 对象时,UIColor(dynamicProvider:)
我不能再使用color1 == color2
了,因为(我认为)它无法比较闭包。
当您在属性中使用颜色时,此问题还会破坏 NSAttributedStrings 的比较。
例子
当前(非最佳解决方案)
有了这个,你就不能再使用==
了,但是当你想比较颜色时必须显式地调用这个函数。
但是一个更好的解决方案必须通过使用比较颜色的每个表示resolvedColor(with:)
。但这必须由 Apple 实施,这样我们才能继续使用==
该Equatable
协议。
ios - 检测是否从 Flutter/Dart 启用了 iOS13 Dark Mode
我正在为 Android 和 iOS 编写一个 Flutter 应用程序,它将根据 iOS 的暗模式状态更改其样式/主题。
Flutter 中目前有类似 MediaQuery.isDarkModeEnabled 的东西吗?
这里有一个 GitHub 问题,但 Flutter 团队必须在问题上不堪重负,所以我看不到它会很快实现。
我可以使用 iOS 特定代码通道中的“traitCollection.userInterfaceStyle”,但是为 Flutter/Dart 应用程序添加特定于平台的代码并不是我所经历的。目前正在研究这个解决方案!
例如,有人可能有一个CupertinoPicker
自适应颜色:
ios - iOS 暗模式 - 未重绘图像资源
我正在为 iOS 实现暗模式。图像出现问题:
- 我打开了 Assets.xcassets 并将“外观”“更改为 Any, Dark”
- 当然,我已经添加了新图像。
不幸的是,在 xcode 中覆盖环境界面样式时,图像不会被重绘。
我已经尝试在我的 viewController 中捕获 traitCollectionDidChange 方法,并且它被正确调用。我可以设置新图像(origImage_dark),但它不应该是自动的吗?这就是资产设置的目的。我正在使用图像的 .alwaysOriginal 渲染。
statusbar - 如何防止 iOS 13 的深色模式更改应用状态栏中的文本颜色?
我的导航栏有一个white
backgroundColor
,我的状态栏使用dark
textColor
. 当用户将 iOS 主题更改为深色模式时,状态栏将变为背景white
上的文本。white
结果,我什么都看不见。如何为我的应用禁用此更改?
swift - systemBackGroundColor 在颜色资源中的 Lightmode 中不起作用
我正在尝试为我的颜色资产添加新颜色,其中亮模式由 systemBackGroundColor 组成,暗模式由 customColor 组成。但是,当我为 lightmode 选择 systemColor 而不是获得白色时,我在颜色资产中获得了黑色。即使在运行应用程序后,我在光照模式下也会变成黑色。
我在 XCode beta 6 和 beta 7 中尝试过。但在模拟器和 iPhone 中重复出现同样的错误。来自 xCode 颜色资源的屏幕截图
ios - 如何以编程方式检查 ios 设备的当前 userInterfaceStyle?
我可以使用任何视图或 ViewController 的 TraitCollection 来获取 userInterfaceStyle,即。黑暗或光明。但是当我强制应用程序使用深色或浅色模式时,我想知道 iOS 设备的当前 userInterfaceStyle 是什么,而与应用程序无关?
我尝试了 UIScreen 的 Traitcollection,但它仍然提供应用程序的 userInterfaceStyle 而不是设备。
ios - UIColor 动态提供程序块有时会收到错误的 userInterfaceStyle
我正在更新一堆颜色以支持新的 iOS 13 深色模式。我通过新的动态提供程序块构造函数以编程方式使用它们。这里的问题是,有时使用错误的属性值调用块userInterfaceStyle
,导致颜色返回错误的值(有时是深色而不是浅色,有时是浅色而不是深色)。
据我了解,我不需要traitCollection
使用这个新的构造函数来监听变化或任何类似的事情。它应该自动完成(或者我错了吗?)。
这里有趣的是,我尝试通过资产目录使用一些虚拟颜色来做这件事,但它也不起作用。还尝试使用一些新系统提供的动态颜色,例如 .systemBackgroundColor。它有时也解决了颜色错误。
那么,究竟应该发生什么?这应该像我期望的那样工作,还是我绝对需要在特定位置(如内部viewWillLayoutSubviews
或traitCollectionDidChange
)分配颜色?
.resolvedColor(with: UITraitCollection)
使用作品手动解析颜色。但是根据我从文档中了解到的情况,我不需要像这样手动解决它。
uipickerview - DarkMode 中的选取器文本颜色
如何将 Picker 控件中的文本设置为 iOS13 暗模式的浅色
要在 IOS13 上支持 DARKMODE,您需要将文本颜色设置为系统可以更改的颜色。但是在检查器上,无法将 Picker 文本设置为任何颜色。
必须有一个简单的方法来做到这一点,但我找不到它。使用属性文本不是解决方案。