2012-03-15 67 views

Respuesta

46

Para el fondo oscuro usar

mytextfield.keyboardAppearance = UIKeyboardAppearanceAlert; 

Leer para encontrar más información sobre UITextInputTraits (UIKeyboardAppearanceDark utilizar en iOs 7+).

+0

Funciona perfectamente en iOS 6. Gracias – AFraser

25

En iOS 7, UIKeyboardAppearanceAlert es obsoleto, a fin de utilizar esto en su lugar:

mytextfield.keyboardAppearance = UIKeyboardAppearanceDark; 

Si tiene que soportar tanto IOSes anteriores y iOS 7, y que ha creado las macros necesarias (por https://stackoverflow.com/a/5337804/588253), se puede utilizar esto:

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

Gracias por la respuesta anterior, me pregunto si sabrá por qué esto no se compilará cuando estoy compilando para un objetivo de iOS 6 y también compatible con iOS7. –

19

para cambiarlo a nivel mundial, puede utilizar proxy de aparición en AppDelegate ... lo he probado en iOS 8, Swift:

UITextField.appearance().keyboardAppearance = .Dark 
5

Actualización a veloz 3,0

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

+0

¿Hay alguna razón para no hacer simplemente UITextField.appearance(). KeyboardAppearance = .dark? – Leon

+0

No, usted puede hacer esto también. –

+1

Lo sé, estaba preguntando si hay una razón por la que no lo haces de la manera corta? – Leon

Cuestiones relacionadas