如果设备处于深色模式,我如何指定 iOS 中的文本为白色,如果处于浅色模式,我如何指定文本为黑色?
How can I specify text in iOS to be white if the device is in dark mode and black if in light mode?
我正在制作启动屏幕。根据设备模式设置,以下代码用于 select 深色或白色背景:
<color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
但是如何为我的文本设置浅色或深色背景,该背景也会根据设备模式设置而变化:
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Test" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="EcF-nC-k2o">
<rect key="frame" x="137.5" y="309.5" width="100" height="48"/>
<fontDescription key="fontDescription" type="system" pointSize="40"/>
<color key="textColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<nil key="highlightedColor"/>
</label>
希望有人能给出好的建议,因为我花了很多时间研究,根本找不到任何建议。
当您在 Interface Builder 中将其设置为 "Label Color" 时,系统会根据界面风格(浅色或深色)自动设置合适的颜色。
查看 Human Interface Guidelines 以获取可用动态颜色的参考。
我正在制作启动屏幕。根据设备模式设置,以下代码用于 select 深色或白色背景:
<color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
但是如何为我的文本设置浅色或深色背景,该背景也会根据设备模式设置而变化:
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Test" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="EcF-nC-k2o">
<rect key="frame" x="137.5" y="309.5" width="100" height="48"/>
<fontDescription key="fontDescription" type="system" pointSize="40"/>
<color key="textColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<nil key="highlightedColor"/>
</label>
希望有人能给出好的建议,因为我花了很多时间研究,根本找不到任何建议。
当您在 Interface Builder 中将其设置为 "Label Color" 时,系统会根据界面风格(浅色或深色)自动设置合适的颜色。
查看 Human Interface Guidelines 以获取可用动态颜色的参考。