DynamicColorIOS
Функция DynamicColorIOS — это тип цвета платформы, специфичный для iOS.
DynamicColorIOS({
light: color,
dark: color,
highContrastLight: color, // (optional) will fallback to "light" if not provided
highContrastDark: color // (optional) will fallback to "dark" if not provided
});
DynamicColorIOS принимает один аргумент в виде объекта с двумя обязательными ключами: dark и light, и двумя необязательными ключами highContrastLight и highContrastDark. Они соответствуют цветам, которые вы хотите использовать для «светлого режима» и «тёмного режима» на iOS, а также для их высококонтрастных версий при включенном режиме высокой контрастности доступности.
Во время выполнения система выберет, какой из цветов отображать в зависимости от текущих настроек внешнего вида и доступности системы. Динамические цвета полезны для брендовых цветов или других цветов приложения, которые автоматически реагируют на изменения настроек системы.
Примечания разработчика
- iOS
- Веб
Если вы знакомы с
@media (prefers-color-scheme: dark)в CSS, это аналогично! Только вместо определения всех цветов в медиазапросе, вы определяете, какой цвет использовать в каких условиях прямо там, где вы его используете. Удобно!
Функция
DynamicColorIOSаналогична родным методам iOSUIColor colorWithDynamicProvider:
import { DynamicColorIOS } from 'react-native';
const customDynamicTextColor = DynamicColorIOS({
dark: 'lightskyblue',
light: 'midnightblue'
});
const customContrastDynamicTextColor = DynamicColorIOS({
dark: 'darkgray',
light: 'lightgray',
highContrastDark: 'black',
highContrastLight: 'white'
});
© 2022 Facebook Inc.
Licensed under the Creative Commons Attribution 4.0 International Public License.
https://reactnative.dev/docs/dynamiccolorios