2012-09-27 12 views
22

Voglio cambiare il tipo di tastiera da predefinito a numerico dopo aver premuto il pulsante di ritorno dell'utente. Tuttavia, dopo l'impostazione della proprietà keyboardType non accade nulla.Il tipo di tastiera che cambia a livello di programmazione su iOS non fa nulla

Il mio codice:

-(BOOL)textFieldShouldReturn:(UITextField *)textField 
{ 
    [textField setKeyboardType:UIKeyboardTypeNumbersAndPunctuation]; 

    return YES; 
} 

mi sono impostato come campo di testo delegato e il metodo viene chiamato dopo aver premuto il tasto di ritorno.

EDIT: Risolto da

-(BOOL)textFieldShouldReturn:(UITextField *)textField 
{ 
    [textField setKeyboardType:UIKeyboardTypeNumbersAndPunctuation]; 
    [textField reloadInputViews]; 
    return YES; 
} 
+0

http://stackoverflow.com/questions/7301018/programmatically-change-uitextfield-keyboard-type – Rushabh

+0

Si potrebbe desiderare di prova la soluzione postata in questa domanda: http://stackoverflow.com/questions/1594346/dynamically-changing-keyboard-type-for-a-uisearchbar – henning77

risposta

21

Prova questo:

-(BOOL)textFieldShouldReturn:(UITextField *)textField 
{ 
    [textField setKeyboardType:UIKeyboardTypeNumbersAndPunctuation]; 
    [textField reloadInputViews]; 
    return YES; 
} 
+0

Ha aiutato, grazie! – Kladimir

+0

@Kladimir se qualsiasi risposta aiuta e risponde perfettamente alla tua domanda, devi contrassegnarla come accettata usando il segno corretto sotto i punti di risposta e le frecce di voto. –

Problemi correlati