Je suis exemple de code Apple "MultipleDetailViews" mais ce que je veux faire est que:iPad: SplitViewController navigation
- au début, montre la RootViewController (vue tableau) afficher la valeur par défaut detailViewController (1er DetailView
- Lorsque l'utilisateur a sélectionné une cellule de tableau, insérez-la dans la pile, affichez SubCategoriesVC (vue tabulaire) dans le masque de splitView mais ne mettez pas à jour detailView.
- dans SubCategoriesVC, la sélection d'une cellule de tableau .. mettre à jour la detailViewController (2ème DetailView)
Ainsi, dans RootViewController.m, je pousse une autre navigation ...
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
SubCatVC *browseSubCatView = [[SubCatVC alloc] initWithNibName:@"SubCatVC" bundle:nil];
[self.navigationController pushViewController:browseSubCatView animated:YES];
[browseSubCatView release];
}
Puis, SubCatVC.m
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UIViewController <SubstitutableDetailViewController> *detailViewController = nil;
SecondDetailViewController *newDetailViewController = [[SecondDetailViewController alloc] initWithNibName:@"SecondDetailViewController" bundle:nil];
detailViewController = newDetailViewController;
// Update the split view controller's view controllers array.
NSArray *viewControllers = [[NSArray alloc] initWithObjects:self.navigationController, detailViewController, nil];
self.splitViewController.viewControllers = viewControllers;
[viewControllers release];
// Dismiss the popover if it's present.
if (self.popoverController != nil) {
[self.popoverController dismissPopoverAnimated:YES];
}
// Configure the new view controller's popover button (after the view has been displayed and its toolbar/navigation bar has been created).
if (self.rootPopoverButtonItem != nil) {
[detailViewController showRootPopoverButtonItem:self.rootPopoverButtonItem];
}
[detailViewController release];
[[NSNotificationCenter defaultCenter] postNotificationName:@"updateProduct" object:nil];
}
mais il n'a pas mis à jour mon DetailView .. donc je ne sais pas ce qui ne va pas? Src ici: http://pastebin.com/iy6SqLqt
J'espère que quelqu'un peut me conseiller. Merci
Luke, merci pour la réponse. J'ai changé mon SubCatVC en SubCatVC: UITableViewController ainsi le délégué fonctionne bien. Un autre problème que j'ai est que lors de la sélection sur la cellule de SubCatVC; contrôleur popover est nul .. comment je peux le passer? ou si vous avez un code/tutoriel que vous pouvez partager serait beaucoup mieux .. tnx –
En général, dans l'objectif-c, vous pouvez passer des pointeurs n'importe où. Faites une propriété sur votre ViewC (qui n'a pas le PopC) et définissez-le après votre init. Dans ce cas, c'est très bien, vous devriez toujours y penser d'abord. Est-ce que le parent du pointeur de l'objet peut mourir avant que l'objet que vous avez passé l'utilise? –
Luke, je sais comment passer le pointeur ... Je me demande juste pourquoi le popover et le popover barbuttonItem est nul. J'ai posté (ci-joint) le code ici (MultiDetailSplitFSG.zip): http://www.iphonedevsdk.com/forum/iphone-sdk-development/66673-splitview-help.html ... j'espère que vous pouvez vérifier pls & Dites-moi ce qui ne va pas .. Je suis vraiment coincé avec ce .. nn n avancé. –