Frage

Ich versuche, eine neue Sicht auf meiner Navigationssteuerung drücken mit:

    -(IBAction)switchPage:(id)sender
{
 MyTableViewController *myTableView = [[CMyTableViewController alloc] initWithNibName:@"MyTableView" bundle:[NSBundle mainBundle]];
 [myTableView release];
 [self.navigationController pushViewController:myTableView animated:YES];
}

Ich bin in den folgenden Fehler ausgeführt wird:

2010-02-25 21:19:57.717 CoC[3399:20b] *** -[UIViewController switchPage:]: unrecognized selector sent to instance 0xf1a660
2010-02-25 21:19:57.718 CoC[3399:20b] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[UIViewController switchPage:]: unrecognized selector sent to instance 0xf1a660'
War es hilfreich?

Lösung

Sie veröffentlichen ein Objekt einfach zugeordnet, die keinen Sinn macht.

 MyTableViewController *myTableView = [[CMyTableViewController alloc] initWithNibName:@"MyTableView" bundle:[NSBundle mainBundle]];
     [myTableView release];

Release myTableView, nachdem Sie es auf den Stapel schieben

Andere Tipps

Anrufmitteilung nach drücken.

2010-02-25 21: 19: 57,717 CoC [3399: 20b] * ** - [UIViewController switchPage:]: Unbekannter Selektor an Instanz gesendet 0xf1a660

Ihr Absturz nicht wegen des Codes, was Sie erwähnt haben. Aber es ist ein Fehler in Ihnen Code wie Release und thenpush. Ändern Sie es wie:

 -(IBAction)switchPage:(id)sender
{
 MyTableViewController *myTableView = [[CMyTableViewController alloc] initWithNibName:@"MyTableView" bundle:[NSBundle mainBundle]];
 [self.navigationController pushViewController:myTableView animated:YES];
 [myTableView release];
}

Ich denke, das Objekt, das ruft „switchPage:“ Methode einige Probleme hat. Prüfen Sie es oder zeigen den Aufruf dieser Methode für jede Hilfe

Viele Grüße, Manjunath

Oben ist in Ordnung, wenn die subview Controller hat sich in den nav Stack geschoben worden ist, sollte die Beibehaltungszähler erhöht werden, dann sollten Sie es nach dem Push-Betrieb freigeben.

Sind Sie sicher, dass Sie brauchen nicht zu tauschen letzten beiden Zeilen? Erste Push-Controller, lassen Sie sie dann nicht umgekehrt ...:)

Wie bereits erwähnt, geben Sie den View-Controller, bevor Sie ihn drücken. Wenn Sie es auf die Navigationssteuerung drücken, behalten die Zählung erhöht wird, und dann können Sie es freigeben.

-(IBAction)switchPage:(id)sender
{
     MyTableViewController *myTableView = [[MyTableViewController alloc] initWithNibName:@"MyTableView" bundle:[NSBundle mainBundle]];
    [self.navigationController pushViewController:myTableView animated:YES];
    [myTableView release];
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top