2017-12-06 2 views
0

Ich wollte meine Warnungsansicht Titel und Schaltfläche Farbe ändern, wie pro meine App Thema und für diese, ich habe viele Lösungen wie folgt zu finden:ändern Alertview UIAlertController Buttons und Titelfarbe in iOS

alertController.view.tintColor = UIColor.red 

Aber vor Der Code ändert nur die Farbe des Schaltflächentitels und nicht den Titel des Alerts.

Testing auf iOS 11 Xcode 9.1

+1

tintColor funktioniert nur für Button Titel, prüfen diese Frage https: // Stackoverflow. com/questions/31662591/swift-how-to-ändern-uialertcontrollers-title-color –

+0

@RajeevUdayan haben Sie eine Idee, Textfarbe zu ändern, ohne Attributstring zu verwenden? – Alok

Antwort

1

Verwenden Sie den folgenden Code Benachrichtigung Titel zu ändern:

alertController.setValue(NSAttributedString(string: "test", attributes: [NSAttributedStringKey.font : UIFont.boldSystemFont(ofSize: 15),NSAttributedStringKey.foregroundColor : UIColor.red]), forKey: "attributedTitle") 

enter image description here

+0

Danke für deine Antwort, ich habe ein paar Syntaxänderungen vorgenommen und deine Antwort aktualisiert und akzeptiert. – Alok

+0

Wenn Sie eine Idee haben, Alertviewcontroller zu unterklassifizieren und dann die Textfarbe ohne Attributstring zu ändern, lassen Sie es mich bitte wissen. – Alok

+1

@Alok gemäß Apple doc 'UIAlertController' unterstützt keine Unterklasse. Wenn Sie jedoch 'UIAlertController' mit Textfarbe verwenden möchten, können Sie eine gemeinsame Methode in einer Klasse erstellen und diese Methode verwenden, um 'UIAlertController' darzustellen. – ivarun

Verwandte Themen