Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Конфигурация темы расширяемости
Чтобы настроить стили пользовательского интерфейса элементов, ведущее приложение может передавать стили (простой объект JSON) в качестве необязательного элемента Prop в корневой элемент
<AdaptiveCards/>.Сейчас в конфигурации темы поддерживаются следующие элементы.
- input
- .
- Набор выбора
- Выбор даты
- Выбор времени
Ведущее приложение может предоставить
platform-specificстили, как упоминалось в следующем примере. Для одних и тех же стилей на разных платформах передайте стили без платформы.- Обратите внимание, что если необходимо предоставить
platform-specificстили, необходимо предоставить разные стили для всех платформiOS,AndroidиWindowsявно. Найдите приведенный ниже пример.
- Обратите внимание, что если необходимо предоставить
colorСвойство иtextTransformв вbuttonбудет применено к названию кнопки. Все остальные стили вbuttonбудут применены к компоненту кнопки React-Native.
Пример
В этом примере стили, переданные для элемента input , применяются ко всем платформам, в то время как применяются стили для button конкретных платформ.
customThemeConfig = {
input: {
borderColor: "#000000",
backgroundColor: "#F5F5F5",
borderRadius: 4,
borderWidth: 1,
},
button: {
"ios": {
color: 'white',
backgroundColor: "#1D9BF6",
},
"android": {
color: 'white',
backgroundColor: "#1D9BF6",
},
"windows": {
color: 'white',
backgroundColor: "#1D9BF6",
}
}
}
<AdaptiveCards themeConfig={customThemeConfig} payload={payload} />
Конфигурация темы по умолчанию
В настоящее время Адаптивекардс по умолчанию имеет следующую конфигурацию темы. Однако разработчик адаптивной карты может переопределить следующие стили или добавить новые стили с помощью пользовательской конфигурации темы. Обратите внимание, что пользовательские стили, передаваемые в указанные ниже элементы, должны поддерживаться в соответствующих компонентах React-Native.
Кроме того, чтобы предоставить другой цвет заполнителя для входных элементов, разработчики могут передать пользовательский стиль, вызываемый placeHolderTextColor в семеконфиг PROPS- input, inputDate, and inputTime .
defaultThemeConfig = {
button: {
ios: {
borderRadius: 15,
backgroundColor: "#1D9BF6",
color: "white",
textTransform: "none"
},
android: {
borderRadius: 15,
backgroundColor: "#1D9BF6",
color: "white"
},
windows: {
borderRadius: 15,
backgroundColor: "#1D9BF6",
color: "white",
textTransform: "none"
}
},
input: {
borderColor: "#dcdcdc",
backgroundColor: "white",
borderRadius: 5,
borderWidth: 1
},
inputDate: {
width: "100%",
height: 44,
padding: 5,
borderWidth: 1,
backgroundColor: "white",
borderColor: "lightgrey",
borderRadius: 5
},
inputTime: {
width: "100%",
height: 44,
padding: 5,
borderWidth: 1,
backgroundColor: "white",
borderColor: "lightgrey",
borderRadius: 5
},
radioButton: {
width: 24,
height: 24,
activeColor: "#000000",
inactiveColor: "#404040"
},
radioButtonText: {
marginLeft: 8,
flexShrink: 1,
activeColor: "#000000",
inactiveColor: "#404040"
},
checkBox: {
width: 28,
height: 28,
activeColor: "#000000",
inactiveColor: "#404040"
},
checkBoxText: {
marginLeft: 8,
flexShrink: 1,
activeColor: "#000000",
inactiveColor: "#404040"
},
dropdown: {
ios: {
flexDirection: "row",
justifyContent: "space-between",
alignItems: "flex-end",
borderWidth: 1,
backgroundColor: "white",
borderColor: "lightgrey",
borderRadius: 5
},
android: {
borderWidth: 1,
backgroundColor: "lightgrey",
borderColor: "lightgrey",
borderRadius: 5
},
windows: {
flexDirection: "row",
justifyContent: "space-between",
alignItems: "flex-end",
borderWidth: 1,
backgroundColor: "white",
borderColor: "lightgrey",
borderRadius: 5
}
},
dropdownText: {
color: "#000000",
textAlign: "left",
marginTop: 10,
marginLeft: 8,
height: 30
},
picker: {
borderWidth: 1,
backgroundColor: "lightgrey",
borderColor: "lightgrey",
color: "#000000",
borderRadius: 5,
marginHorizontal: 2
},
dateTimePicker: {
backgroundColor: "white",
height: 260,
width: "100%",
textColor: "#000000"
},
switch: {
trackColor: undefined, /// Object of type {true: color; false: color} (See RN Docs)
thumbColor: undefined,
ios_backgroundColor: undefined
}
};