2009-02-24 13 views

Odpowiedz

2

Tak, możliwe. Po prostu utwórz nowy widok za pomocą kontrolera widoku i utwórz instancję tego widoku w klasie. Następnie w ibaction można zrobić usuwanie i dodawanie subviews. To tylko szybki i łatwy sposób Chciaż, można dostać się dużo bardziej szczegółowo w jaki sposób zarządzać każdym widoku, itp

Edycja na żądanie: W swojej klasie, należy utworzyć instancję go w interfejs tak:

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

następnie zrób instancję aplikacji delegata w ibaction tak:

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

a następnie można to zrobić, aby przełączyć się z jednego widoku do drugiego:

[self removeFromSuperView]; (or self.view in case this is a view controller) 
[[myAppDelegate window] addSubview:myClass]; 
+0

Dzięki za odpowiedź ur. czy możesz podać przykładowy kod lub przykładowy kod? – Nasir

1

można zrobić coś jak poniżej, aby dodać widok programowo:

 //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]; 
Powiązane problemy