2010-12-06 15 views
0

Ich habe eine Anwendung, wo ich eine "benutzerdefinierte" Einstellungsseite haben muss. In meinem Delegaten füge ich die Ansicht eines UINavigationControllers dem Fenster mit einem UIViewController als rootviewcontroller hinzu.So ändern/hinzufügen Ansicht zu rootcontrollers Ansicht in UINavigationController

Im rootviewcontroller möchte ich eine Schaltfläche haben und wenn ich die Schaltfläche drücke, ändert sich die gesamte Ansicht in die Einstellungsansicht, die ich gemacht habe. Ich brauche nur den Code, um die Ansicht zu ändern.

Vielen Dank für die Hilfe im Voraus.

Antwort

1

Wenn Einstellungen anzeigen UIView SubClass dann in der Schaltfläche Aktion Methode, die Sie so etwas tun kann:

[self.view addChild: settingsView]; // vorausgesetzt, die settingsView ist bereits vergeben.

Wenn Sie eine separate UIViewController SubClass für Einstellungen aufgeschrieben haben, dann können Sie so etwas in Ihrer Schaltfläche Aktion Methode tun:

SettingsViewController *controller=[[SettingsViewController alloc]initWithNibName:@"SettingsViewController" bundle:nil]; 
[self.navigationController pushViewController:controller animated:YES]; 
[controller release]; 
+0

Auf meinem Simulator funktioniert das [self.view.window addSubview: svc.view]; // Dieser Code ist in meinem Root-View-Controller Allerdings auf meinem iPhone funktioniert es nicht. – LuckyLuke

+0

naja, bleib einfach bei "self.view" statt "self.view.window" – jAmi

+0

Funktioniert nicht wie vorgesehen auf dem iPhone. Ich habe eine Anwendung, die auf UINavigationController basieren. Die Ansicht UINavigationControllers wird dem Fenster in appdelegate hinzugefügt. Der navigationController wird mit einem normalen UIViewController initialisiert. Also, wenn ich die Anwendung starte, ist es ein blauer Balken mit der Root-Controller-Ansicht. Was ich habe und möchte, ist eine Schaltfläche in der Ansicht des Root-Controllers, auf die ein Benutzer tippen kann. Wenn er/sie das macht, wechselt der gesamte Bildschirm zu einer anderen Navigationssteuerungsansicht. Dies wird die "In-App-Einstellungsansicht" sein. Ich muss meinen Kommentar AUFBRECHEN ... lesen Sie weiter. – LuckyLuke

Verwandte Themen