Domanda

Io sono googling da un lungo periodo di tempo, ma non ottenere la soluzione, In iOS 5.1 Master la Vista Arriva sul destro tocco, e scompaiono swipe verso sinistra.

Ho voglia di carico master di vista su clic del pulsante di vista di Dettaglio, Come è possibile?

di seguito il codice è lavorato per me, vista Master nascondere, ma un nero dimensioni dello schermo di visualizzazione Master rimangono nel luogo di Master di vista.

- (void)hideMaster:(BOOL)hide {

  AppDelegate *appDelegate=(AppDelegate *)[[UIApplication sharedApplication] delegate];
 UISplitViewController* spv = appDelegate.splitViewController;
 spv.delegate=self;
 self.hiddenMaster= hide;
 [spv willRotateToInterfaceOrientation:self.interfaceOrientation duration:0];
 [spv.view setNeedsLayout];     
 }


- (BOOL)splitViewController:(UISplitViewController*)svc shouldHideViewController: (UIViewController *)vc inOrientation:(UIInterfaceOrientation)orientation {

NSLog(@"Spv: I do %@show the master", (self.hiddenMaster?@"not ":@""));

return self.hiddenMaster;
}

Grazie in anticipo

È stato utile?

Soluzione

Il modo standard, da quanto ho capito, per fare questo è:

  1. Nell'app delegato file è necessario impostare uno di Visualizzazione iniziale Controller per essere il UISplitViewControllerDelegate.Se non fai questo qui non sarà possibile ottenere il primo bottone se si avvia l'applicazione in orientamento verticale.Per esempio:

    UINavigationController *masterNavigationController = [self.splitViewController.viewControllers objectAtIndex:0];
    MyMasterVC *master = [self.masterNavigationController.viewControllers objectAtIndex:0];
    self.splitViewController.delegate = master;
    
  2. In MyMasterVC.h dichiarare se stessi come <UISplitViewControllerDelegate> modificando l'interfaccia, come ad esempio:

    @interface MyMasterVC : UIViewController <UISplitViewControllerDelegate>

  3. In MyMasterVC.m è necessario implementare i vari metodi di UISplitViewControllerDelegate che sono descritto qui la documentazione di Apple

I metodi per nascondere e mostrare il view controller dare un UIBarButtonItem quale si deve poi aggiungere, o togliere, il Dettaglio View Controller (per esempio, un UIToolBar o UINavigationBar).

Se si hanno problemi a trattare con questo, è coperto abbastanza bene in una delle conferenze su iTunesU dall'ottimo Paul Hegarty dell'Università di Stanford (Autunno 2010 o 2011 - non ricordo).Si dovrebbe davvero dare un'occhiata.iOS5.1 ha cambiato il modo in cui il MasterVC è presentato dalla rigorosa "popover" via del corso, ma penso che i metodi descritti continua a funzionare.E ' abbastanza presto nel corso, magari lezione 5 o 6 o 7 o qualcosa di simile.Penso che si chiama Split Vista, o iPad di dissenso o simili.

EDIT: E ' lezione 7, e si chiama:"UIToolbar e le App per iPad"

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top