UIALERTCONTROLLER Personnalisé Personnalisage ne fonctionne pas.
Le code suivant est une fonction Lorsque je mettais le code sur Lorsque je mettez le code sur la deuxième tentative forte>
Le code suivant ne fonctionne pas non plus correctement. P> Lorsque je mets le code sur Lorsque je mettez le code sur showactionsheetasync code>, afficher
actionchette code>.
À ce stade, je veux modifier la police de la fiche
action code>. J'ai essayé plusieurs manières, mais cela n'a pas bien fonctionné. Y a-t-il une bonne solution? p>
[bloc 1] code> ou
[bloc 2] p> p> p> p> P>
[bloc 3] code> p>
ActionSheet Code>. À partir de la seconde fois, cela ne fonctionne pas li>
ul> li>
ul>
Uilabel.appreucaranceHhencontainé (typeof (Uiacersheet)). Police
= Uifont.fromname (styleesources.mediumfontname, 20);
code> p>
[bloc 2] code> p>
[bloc 3] code> p>
Annuler CODE> BOUTON LI>
ul> li>
ul>
FindDescendantviews
uiview code> et renvoie toute la vue enfant du type approprié. P>
var labels = alert.View.FindDescendantViews<UILabel>();
foreach (var label in labels)
{
label.Font = UIFont.FromName(StyleResources.MediumFontName, 20);
}
3 Réponses :
uialertController code>
uilabels code> police et couleur peut être défini via kVC à l'aide de la touche
attributettitle code>. Utilisez ceci dans
[bloc 3] code>
Ce n'est pas une solution sur ma question. Je veux changer de style de bouton (polices) et non un titre et des styles de message
Jetez un oeil à ce Stackoverflow.com/Questtions/26460706/ ... BTW KVC est codage de la valeur clé développeur.apple.com/library/ios/documentation/cocoa/conceptu al / ...
J'ai la solution ici. J'ai créé un alertthemeconfigurateur personnalisé qui exécute récursivement toutes les sous-étapes à la recherche d'Uilabels, puis définit le thème attribuétext sur eux pour le titre, le message et différents types d'actions. N'hésitez pas à styler les cordes attribuées de manière appropriée.
let alert = CustomAlertController(title: "Title", message:"Message" , preferredStyle: UIAlertControllerStyle.ActionSheet) alert.addAction(UIAlertAction(title: "Close", style: UIAlertActionStyle.Default, handler: nil)) presentViewController(alert, animated: true, completion: nil) AlertThemeConfigurator.configureAlertViewController(alert)
Je pense que cela n'est pas autorisé à sous-classer une uialertController selon les directives d'Apple.
Je viens de mettre à jour la solution pour ne pas hériter de l'uialertviewController :) J'espère que cela aide
@Bhavukjain Je viens de mettre à jour une fois de plus et j'ai créé une classe privée pour effectuer le thème de l'étiquette, de sorte que les méthodes ne soient pas exposées.
@Bhavukjain vient de réaliser que j'avais un type dedans, n'appelions pas AlertLabels à AlertLabelconfigurator. Corrigé
Il n'est pas autorisé à sous-classer ou à modifier les choses par défaut d'un uialertController. Vous devez faire une vue personnalisée pour cela. P>
Avez-vous fatigué avec
label.font = uifont (Nom: Styleresources.MediumFontName, Taille: 20) Code>?
Quelle est la différence avec ma deuxième tentative et votre code? @Jigartarsariya
Avez-vous regardé dans le Protocole UIAPPearance ?
Vous signifie ma première tentative? (Uilabel.apprenceHhencontainé) @Brett Donald