2010-11-06 4 views
0

J'ai un uiveivew composé de tablecells personnalisés (de type FormCell). Chaque cellule a une étiquette et un champ de texte.Iterate dans un UItableview - iphone

Je voudrais itérer toutes les valeurs pour obtenir l'entrée d'utilisateur (en d'autres termes, ce qui est écrit dans les UITextFields)

Je suis arrivé aussi loin que

NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"FormCell" owner:self options:nil]; 
for (id oneObject in nib) 
if ([oneObject isKindOfClass:[FormCell class]]) { 
} 

donc j'ai les cellules, mais quelqu'un peut-il me dire ce qu'il faut faire s'il vous plaît?

merci!

+0

Essayez-vous ceci dans cellForRowAtIndexPath? Aussi, pourquoi cherchez-vous dans la plume pour l'entrée de l'utilisateur? – Anna

+0

nib est d'obtenir le FormCell, qui fonctionne parfaitement. Mais je ne peux pas obtenir le UITextfield – Lilz

Répondre

2

Vous devriez avoir un objet/une collection modèle que vous utilisez pour conserver les valeurs que vous obtenez/définissez dans vos champs de texte.

Ne pas oublier que les cellules se dequeued vous devrez réinitialiser le texte dans chaque champ de texte (comme il est recréé dans votre tableView: cellForRowAtIndexPath:. Pour vous assurer qu'il ne disparaît pas lorsque l'utilisateur fait défiler

étapes: 1. un iNITIALISER NSMutableArray (par exemple textFieldValues) 2. tableView: cellForRowAtIndexPath: créer votre cellule le texte Définir textField être ce que vous avez dans votre collection pour être votre [textFieldValues ​​objectAtIndex: indexPath.row]. 3. Assurez-vous que vous avez défini un délégué textField (auto?) 4. Lorsque textField finishesEditing enregistre la valeur dans votre tableau textFieldValues, vous pouvez définir la ta g propriété de TextField à indexPath.row :)

Terminé.