J'essaie d'apprendre à utiliser différentes vues, pour cet exemple d'application de test, j'ai une page de connexion, lors de la connexion réussie, l'utilisateur est redirigé vers une vue de table, puis sur la sélection de un élément dans la vue de la table, l'utilisateur est dirigé vers une troisième page montrant les détails de l'élément. La première page fonctionne très bien, mais le problème se produit quand je vais à la deuxième page, la table montrée n'a pas de titre et je ne peux pas ajouter de titre ou de barre d'outils ou autre chose que le contenu des tables elles-mêmes. et quand je clique sur l'article, inutile de dire que rien ne se passe. pas d'erreurs aussi.Iphone SDK - ajouter UITableView à UIView
Je suis relativement novice en programmation et j'ai toujours travaillé sur Java mais jamais sur C (bien que j'aie des connaissances de base en C) et l'Objective C est nouveau pour moi.
Voici le code.
-(IBAction) login {
RootViewController *rootViewController = [[RootViewController alloc] init];
if([username.text isEqualToString:@"test"]&&[password.text isEqualToString:@"test"]){
[window addSubview:[rootViewController view]];
[window makeKeyAndVisible];
}
else {
loginError.text = @"LOGIN ERROR";
[window addSubview:[viewController view]];
[window makeKeyAndVisible];
}
}
@interface RootViewController : UITableViewController {
IBOutlet NSMutableArray *views;
}
@property (nonatomic, retain) IBOutlet NSMutableArray * views;
- (void)viewDidLoad {
views = [ [NSMutableArray alloc] init];
OpportunityOne *opportunityOneController;
for (int i=1; i<=20; i++) {
opportunityOneController = [[OpportunityOne alloc] init];
opportunityOneController.title = [[NSString alloc] initWithFormat:@"Opportunity %i",i];
[views addObject:[NSDictionary dictionaryWithObjectsAndKeys:
[[NSString alloc] initWithFormat:@"Opportunity %i",i], @ "title", opportunityOneController, @"controller", nil]];
[email protected]"GPS";
}
[super viewDidLoad];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}
// Configure the cell.
cell.textLabel.text = [[views objectAtIndex:indexPath.row] objectForKey:@"title"];
return cell;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UIViewController *targetViewController = [[views objectAtIndex:indexPath.row] objectForKey:@"controller"];
[[self navigationController] pushViewController:targetViewController animated:YES];
}
Wow, je trouvais ça vraiment difficile de poster le code. Je m'excuse pour la mauvaise mise en forme, mais je ne pouvais pas dépasser les règles de mise en forme pour cet éditeur de texte.
Merci, Shashi
Ceci est trop de code pour les gens à regarder et encore moins à reformater. Travailler à travers des tutoriels plus simples et apprendre à affiner les problèmes et afficher uniquement le code pertinent. Si ce n'est pas assez d'informations, les gens demanderont plus. – DyingCactus
Je pense que j'ai enlevé beaucoup de code inutile, laissez-moi savoir si je dois nettoyer plus. – Shashi