Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Configuration du thème d’extensibilité
Pour personnaliser les styles d’interface utilisateur des éléments, l’application hôte peut passer des styles (objet JSON brut) en tant qu’élément
<AdaptiveCards/>de la racine facultatif.Actuellement, les éléments ci-dessous sont pris en charge dans la configuration de thème.
- entrée
- ...
- Jeu de choix
- sélecteur de dates
- sélecteur d’heure
L’application hôte peut fournir
platform-specificdes styles comme indiqué dans l’exemple ci-dessous. Pour les mêmes styles sur les plateformes, transmettez les styles sans la plateforme.- Notez que si vous souhaitez fournir
platform-specificdes styles, vous devez fournir des styles différents pour toutes les plateformesiOS,AndroidetWindowsexplicitement. Veuillez trouver l’exemple ci-dessous.
- Notez que si vous souhaitez fournir
La
colorpropriété ettextTransformdans lebuttonsera appliquée au titre du bouton. Tous les stylesbuttondu s’appliqueront au composant bouton React-Native.
Exemple
Dans cet exemple, les styles passés pour l’élément input sont appliqués à toutes les plateformes, tandis que pour button les styles spécifiques à la plateforme sont appliqués.
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} />
Configuration du thème par défaut
Actuellement, AdaptiveCards prend la configuration de thème ci-dessous par défaut. Toutefois, le développeur de cartes adaptatives peut remplacer les styles ci-dessous ou ajouter de nouveaux styles à l’aide de la configuration de thème personnalisée. Notez que les styles personnalisés qui passent aux éléments ci-dessous doivent être pris en charge dans les composants React-Native respectifs.
En outre, pour fournir une couleur d’espace réservé différente pour les éléments d’entrée, les développeurs peuvent passer un style personnalisé appelé placeHolderTextColor dans les propriétés themeConfig- 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
}
};