2013-03-18 10 views
5

Sto sviluppando un'applicazione di dettaglio principale utilizzando Xcode 4.3.3, ora nel controller di visualizzazione principale sono riuscito a caricare un controller di visualizzazione aggiuntivo denominato "Fav Real"
Quando questo visualizza i carichi del controller, conterrà diversi elementi presi da un database sqlite in un TableViewController.
Il mio problema è qui, ho bisogno quando clicco su qualsiasi riga caricata, per caricare un viewController diverso nel detailViewController, per caricare un altro controller di visualizzazione invece del primo.
In realtà sono perso, ho provato a fare il seguente schema ma non ho idea di come fare il mio obiettivo ... Qualsiasi aiuto sarà molto apprezzato. enter image description hereCaricamento di controller di viste diverse nel modello di app del dettaglio principale

Come mostra, gli elementi verranno caricati correttamente nella tabella FavRealView, ma il mio obiettivo è quando faccio clic su qualsiasi riga, i "Dettagli" visualizzati a destra caricheranno invece di DetailsViewController.
Ho provato questo codice nella FavReal.m ma ottengo sempre: "L'applicazione ha tentato di spingere un controller di vista nullo sul bersaglio

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 

Details * vc4 = [self.storyboard instantiateViewControllerWithIdentifier:@"Details"]; 
[self.navigationController pushViewController:vc4 animated:YES]; 

} 

Grazie per il vostro tempo, se sono necessari ulteriori dettagli informi. me

risposta

0

Nel caso in cui qualcuno avesse lo stesso problema di me, l'unica soluzione che ho trovato non è caricare un controller di visualizzazione diverso e sostituire il detailViewController originale, ma la soluzione effettiva era creare un nuovo storyboard e farlo apparire quando si fa clic sul pulsante Preferiti, in questo modo si ottiene un effetto elegante e si mantiene la presentazione dei dati accurata. Per farlo utilizzare le seguenti righe di codice:

UIStoryboard* storyboard = [UIStoryboard storyboardWithName:@"SecondStoryboard" bundle:nil]; 
UIViewController* initialHelpView = [storyboard instantiateInitialViewController]; 

initialHelpView.modalPresentationStyle = UIModalPresentationFullScreen; 
[self presentModalViewController:initialHelpView animated:YES]; 

Hai la libertà di modificare la presentazione modale come preferisci.
Buona fortuna

Problemi correlati