Comment Obtenir La Valeur Sélectionnée De UIPickerView
Je sais qu'avec un UIDatePicker, vous pouvez utiliser quelque chose comme:
NSDate *myDate = picker.date;
Mais je suis en utilisant un UIPickerView de mon point de vue. Comment puis-je de même obtenir la valeur sélectionnée? Ou dois-je d'installation didSelectRow type de méthode pour faire cela?
Mise à jour:
Ce code fonctionne pour sélecteur à 1 composant:
NSInteger row;
NSString *weightSelected;
row = [repPicker selectedRowInComponent:0];
weightSelected = [pickerArray objectAtIndex:row];
Je fatigué ce code pour mon sélecteur avec 2 composants, mais il est de congélation:
NSInteger row1, row2;
NSString *weightSelected1;
NSString *weightSelected2;
row1 = [repPicker selectedRowInComponent:0];
row2 = [repPicker selectedRowInComponent:1];
weightSelected1 = [pickerArray objectAtIndex:row1];
weightSelected2 = [pickerArray objectAtIndex:row2];
NSString *weightSelected = [NSString stringWithFormat:@"%@.%@", weightSelected1, weightSelected2];
Vous devez vous connecter pour publier un commentaire.
Vous pouvez l'obtenir de la manière suivante:
Vous pouvez obtenir le texte de l'élément sélectionné dans la section du sélecteur à l'aide de la même fonction que la pickerView n', à partir de votre personnalisé ViewController classe:
à l'aide de l'élément sélectionné
afin de définir le texte de l'étiquette dans une cellule personnalisé à l'aide de la valeur actuellement sélectionnée à partir de la 2e section de myPickerView (une propriété de votre vue-contrôleur probablement)
Il suffit de changer à la fois :1 pour :2s, etc pour chaque section
UIPickerViewDelegate
est d'arriver à la ligne des titres à partir d'un tableau. Franchement, ce devrait être la accepté de répondre.C'est ce que j'ai fait:
La
selectedEntry
est unNSString
et tiendra l'entrée actuellement sélectionnée dans la pickerview. Je suis nouveau à l'objective-C mais je pense que c'est beaucoup plus facile.Vous pouvez accéder à la ligne sélectionnée pour un composant donné à l'aide de la méthode suivante:
Sinon, la mise en œuvre de la fonction de délégué est la seule autre option.
dimissPicker
méthode qui est appelée lorsque le bouton envoyer est pressé. Je veux que la valeur sélectionnée pour ensuite être sauvegardé ou de mise à jour d'un bouton, etc lorsque le dissmissPicker méthode est appelée. Comment puis-je faire cela? Ai-je besoin d'ajouter de laselectedRowInCompnent
méthode?selectedRowInComponent
méthode, mais que dois-je faire exactement avec elle. Son censé renvoyer la valeur sélectionnée. J'ai 2 composants dans le boitier également.Vous devez utiliser le
didSelectRow
délégué de la méthode, car unUIPickerView
peut avoir un nombre arbitraire de composants. Il n'y a pas de "objectValue" ou quelque chose comme ça, parce que c'est entièrement à vous.Vous devez demander le sélecteur de déléguer, de la même manière que votre application n'. Voici comment je le fais à partir de mon UIPickerViewDelegate:
C'est ma réponse