Je filme actuellement une bande complexe de Mon utilisation de la coutume Par conséquent, au lieu d'utiliser * Je parle du protocole code> uiappearance de code> utilisé pour prédéfinir les paramètres d'apparence d'objet dans le délégué de l'application. em> p> uiappearance code> modificateurs * et ont rencontré un problème. p>
UIBARBUTON CODE> UIBARBUTON CODE> CAUSON
MFMailCommerViewController CODE> Pour se plaindre et arrêter de travailler. P>
uiappearance code> 's
quand méthode code> pour spécifier des classes qui entraînent une modification de la modification, existe-t-il un moyen d'exclure certaines classes, c'est-à-dire une "quand non contenue dans "? P>
3 Réponses :
Vous pouvez utiliser à partir de iOS 9 SDK, il y a aussi P > apparenceHhencontainine: code> pour spécifier la modification nil, qui donnera l'apparence par défaut:
UIBarButton.appearance().barTintColor = UIColor.redColor()
UIBarButton.appearanceWhenContainedInInstancesOfClasses([MFMailComposerViewController.self]).barTintColor = nil
Pour moi, j'ai utilisé celui-ci qui fonctionne dans iOS 10,
[[UITextField appearanceWhenContainedInInstancesOfClasses:@[[UISearchBar class]]] setTextColor:[UIColor darkGrayColor]];
Ma solution consiste à créer une sous-classe personnalisée de tous les contrôleurs d'affichage du conteneur utilisé dans l'application en tant que Sous-Windows code> UIWindow code> (contrôleur de vue de la racine de la fenêtre ou des contrôleurs de vue présentés), tels que UINAVIGATIONCONTROLLER CODE>, Disons que l'application utilise uniquement UITABBARCONTROLLER CODE> ou
UISPLITVIEWCONTROLLER CODE>.
uinavigationController code>. Créez une sous-classe: P>
UIBarButtonItem.appearance(whenContainedInInstancesOf:
[CustomizedNavigationController.self])