2010-07-21 5 views
1

J'ai un objet UIPickerView qui a cinq lignes qu'un utilisateur peut sélectionner. Je veux retourner l'index de la ligne que l'utilisateur sélectionne sur IBAction. Lorsque ma méthode est appelée, je peux retourner le texte de la valeur de ce que l'utilisateur a sélectionné avec ce code: NSString * userChoice = [self pickerView:picker titleForRow:[picker selectedRowInComponent:0] forComponent:0]; Je veux maintenant retourner en tant que NSInteger, la ligne qui est retournée. Le code suivant tue le programme et je ne sais pas pourquoi: NSLog(@"hello?? %@", [picker selectedRowInComponent:0]);Comment utiliser la méthode selectedRowInComponent pour UIPickerView

Des pensées? Existe-t-il une meilleure méthode à utiliser en plus de selectedRowInComponent?

Répondre

6

essayer cette

NSLog(@"hello?? %d", [picker selectedRowInComponent:0]); 
+0

qui ont fonctionné. Merci. Je pensais que% @ peut être utilisé pour n'importe quel objet, apparemment pas pour NSIntegers. – ternto333

+0

Voici une liste complète des prescripteurs de format: http://developer.apple.com/mac/library/documentation/cocoa/conceptual/Strings/Articles/formatSpecifiers.html – Kurbz

0

Un NSInteger n'est pas un objet, il est un typedef pour un long ou int (voir doc).

Comme Aaron a fait remarquer, vous pouvez utiliser l'un des spécificateurs de format:% d,% D,% i

Questions connexes