2012-03-15 22 views

risposta

46

Per il fondo scuro utilizzare

mytextfield.keyboardAppearance = UIKeyboardAppearanceAlert; 

Leggi per trovare ulteriori informazioni su UITextInputTraits (utilizzare UIKeyboardAppearanceDark a iOs 7+).

+0

Funziona perfettamente in iOS 6. Grazie – AFraser

25

In iOS 7, UIKeyboardAppearanceAlert è deprecato, in modo da utilizzare questo, invece:

mytextfield.keyboardAppearance = UIKeyboardAppearanceDark; 

Se è necessario supportare sia iOSes precedenti e iOS 7, e hai creato le macro necessarie (per https://stackoverflow.com/a/5337804/588253), è può utilizzare questo:

mytextfield.keyboardAppearance = (SYSTEM_VERSION_LESS_THAN(@"7.0") ? UIKeyboardAppearanceAlert : UIKeyboardAppearanceDark); 
+0

Grazie per la risposta di cui sopra, mi chiedevo se avresti saputo perché questo non verrà compilato quando sto costruendo per un obiettivo di iOS 6 e supportando anche iOS7? –

19

Per cambiare globalmente, è possibile utilizzare il proxy apparizione in AppDelegate ... ho provato in iOS 8, Swift:

UITextField.appearance().keyboardAppearance = .Dark 
5

Aggiornamento a rapida 3,0

let textFieldAppearance = UITextField.appearance() textFieldAppearance.keyboardAppearance = .dark //.default//.light//.alert

+0

C'è un motivo per non fare solo UITextField.appearance(). KeyboardAppearance = .dark? – Leon

+0

No, puoi farlo anche tu. –

+1

Lo so, stavo chiedendo se c'è un motivo per cui non lo fai nel modo più breve? – Leon

Problemi correlati