J'ai un xib dans lequel j'ai ajouté un delta nommé UIViewController
. La vue sous delta est contrôlée par le delta viewcontroller, pas par le propriétaire du fichier. Sur la vue delta, j'ai un UIViewPicker
. Mon problème est que je suis la programmation dans le UIPickerView
dans le deltaviewcontroller
et je publie deltaviewcontroller
en tant que délégué et source de données pour le UIPickerView
. Tout devrait fonctionner, mais quand je charge la vue deltaviewcontroller, l'application plante. Si je réalise tout de la même manière sous la vue du propriétaire du fichier, cela fonctionne très bien. Je me demande s'il y a vraiment un moyen de faire fonctionner UIPickerView avec un UIViewController
et pas nécessairement le propriétaire d'un fichier.iPhone UIPickerView dans UIViewController
Pour les références, le code:
tête
@interface DeltaViewController : UIViewController <UIPickerViewDelegate, UIPickerViewDataSource> {
NSMutableArray *arrayNo;
IBOutlet UIPickerView *pickerView;
}
@property (nonatomic, retain) UIPickerView *pickerView;
@property (nonatomic, retain) NSMutableArray *arrayNo;
@end
mise en œuvre
#import "DeltaViewController.h"
@implementation DeltaViewController
@synthesize pickerView;
@synthesize arrayNo;
- (void)viewDidLoad
{
NSMutableArray *dollarsArray = [[NSMutableArray alloc] init];
for (int i = 0; i < 100; i++)
{
NSString *item = [[NSString alloc] initWithFormat:@"%i", i];
[dollarsArray addObject:item];
}
self.arrayNo = dollarsArray;
[dollarsArray release];
}
#pragma mark -
#pragma mark Picker Data Source Methods
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 1;
}
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
return [arrayNo count];
}
#pragma mark Picker Delegate Methods
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
return [arrayNo objectAtIndex:row];
}
- (void)dealloc {
[arrayNo release];
[pickerView release];
[super dealloc];
}
@end
S'il vous plaît indiquer si je fais quelque chose de mal. L'aide est très appréciée.
Ce code semble correct si ce n'est que vous fuyez la chaîne "item". Quel est le crash/exception réel que vous obtenez? Pouvez-vous décrire et montrer le code pour charger/afficher le contrôleur de vue delta? – gerry3
Ouvrez la console à partir du menu Exécuter et dites-nous l'erreur que vous obtenez – willcodejavaforfood
Quel a été le problème? – kennytm