Wie ein mehrere Fenster / Ansichten auf dem iPhone zu schaffen?

stimmen
7

Ist es möglich, mehrere Ansicht oder Fenster in einem (Fenster-basiert) iPhone-App zu erstellen?

Veröffentlicht am 24/02/2009 um 10:58
quelle vom benutzer
In anderen Sprachen...                            


2 antworten

stimmen
2

Ja Art möglich. Erstellen Sie einfach eine neue Ansicht, die einen View-Controller verwenden und eine Instanz dieser Ansicht in Ihrer Klasse erstellen. Dann in einem IBAction könnten Sie einige Entfernen und Hinzufügen von Subviews zu tun. Das ist nur eine schnelle und einfache Art und Weise tho können Sie in viel mehr Detail bekommen mit, wie Sie jede Ansicht verwalten würden, usw.

Bearbeiten Sie auf Anfrage: In Ihrer Klasse, würden Sie eine Instanz davon in der Schnittstelle wie so erstellen:

MyClass *myClass; (make sure to alloc and init in the init or awakeFromNib method)

Dann machen Sie eine Instanz der app-Delegaten in der IBAction wie folgt aus:

MyAppDelegate *myAppDelegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate];

Und dann kann man dies von einer Ansicht zur anderen wechseln tun:

[self removeFromSuperView]; (or self.view in case this is a view controller)
[[myAppDelegate window] addSubview:myClass];
Beantwortet am 24/02/2009 um 11:12
quelle vom benutzer

stimmen
1

Sie können so etwas wie das folgende tun programmatisch eine Ansicht hinzuzufügen:

     //If you create controllers via XCode, just link them in the .h file with IBOutlet
     UIViewController *aViewController = [[UIViewController alloc] initWithNibName:@"YourNibName" bundle:[NSBundle mainBundle]];
     self.viewController = aViewController;
     [aViewController release];
     // Add the view controller's view as a subview of the window
     UIView *controllersView = [viewController view];
     [window addSubview:controllersView];
     [window makeKeyAndVisible];
Beantwortet am 02/11/2009 um 15:47
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more