Vai al contenuto

nascondere tastiera iPhone


Messaggi raccomandati

ho un problema.. non riesco a far chiudere la tastiera una volta apparsa..

ho seguito questa guida..

4. Facciamo chiudere la tastiera
Se provate ad inserire un nome e a premere il tasto “Invio†della tastiera che appare sull’iPhone, noterete che essa non si chiude. Si tratta di un bug? La risposta è no. È normale, in quanto non abbiamo implementato niente che chiuda tale tastiera. Per sistemare questo problema, apriamo il ï¬le “HelloWorldViewController.h†e modiï¬chiamo l’intestazione nella seguente maniera:

@interface HelloWorldViewController : UIViewController  <UITextFieldDelegate>{

Potete notare che abbiamo aggiunto “<UITextFieldDelegate>“, ovvero la nostra classe deve implementare il delegato della classe UITextField. Man mano procederete con la vostra avventura con la programmazione per iPhone imparerete cosa sono esattamente i delegati, per ora sappiate che sono dei comportamenti comuni a delle classi di oggetti. Fatto ciò, andiamo nel ï¬le “HelloWorldViewController.m†e inseriamo, in un qualsiasi punto, questo metodo:

// questo metodo permette alla tastiera di chiudersi
-(BOOL)textFieldShouldReturn:(UITextField *)textField{
[textField resignFirstResponder];
return YES;
}
Questo metodo si occuperà della chiusura della nostra tastiera. Non soffermiamoci sul codice, in quanto è così in qualsiasi occasione voi vogliate implementarlo. Salvate entrambi i ï¬le e aprite “HelloWorldViewController.xibâ€. Cliccate sulla UITextField e aprite il “Connections Inspectorâ€: vedrete nella sezione “Outlets†un elemento chiamato “delegateâ€, prendete il pallino e trascinatelo sul “File’s Owner†nel pannello dei documenti. Se avrete eseguito correttamente questa operazione il vostro pannello sarà come questo:

ma non funziona.. sig sig sig

MacBook pro non unibody 2.4 ghz iPod Touch 4° IPhone 4s MacBook pro 13" 2011

my Flickr

Link al commento
Condividi su altri siti

allora.. ho trovato un'altra guida..

praticamente bisogna aggiungere

<UITextFieldDelegate>

nell'intestazione del .h

poi nel .m

si mette questo

-(BOOL) textFieldShouldReturn : (UITextField *) textField {

[prima_casellatesto resignFirstResponder];

[seconda_casellatest resignFirstResponder];

return YES;

}

e infine

Infine apriamo Interface Builder e colleghiamo l’outlet delegate (pannello Connections) di ogni UITextField al File’s Owner presente nella finestra principale degli elementi del file XIB.

ecco fatto tutto.. molto semplice.. però l'app non si apre più ma crasha :mad: :mad:

MacBook pro non unibody 2.4 ghz iPod Touch 4° IPhone 4s MacBook pro 13" 2011

my Flickr

Link al commento
Condividi su altri siti

Archiviato

Questa discussione è archiviata e chiusa a future risposte.

×
×
  • Crea Nuovo...