2012-07-21 9 views
6

W Androidzie można używać Fragmentów do opracowania tylko jednej aplikacji przeznaczonej na telefony i stoły, dzięki czemu możesz mieć inny interfejs użytkownika. Możesz nawet używać tylko układów i mieć pewne warunki na kodzie, aby uruchomić logikę tabletu lub telefonu.Odpowiednik iOS dla Android Fragmenty/układy

Potrzebuję opracować aplikację na iPhone'a i iPada i zastanawiam się, czy jest coś podobnego do implementacji różnych interfejsów i bardzo różnych zachowań. W moim przypadku aplikacja na iPhone'a korzystałaby z zakładek u dołu ekranu, ale iPad powinien korzystać z menu po lewej stronie.

Odpowiedz

2

Tak, możesz używać różnych interfejsów dla iPhone'a i iPada. utworzyć dwa XIB pliki i kiedy pokazując im na wykorzystaniu ekranu tego warunku o wszczęciu XIB

UIViewController *viewController; 
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) { 
    viewController = [[[ViewController alloc] initWithNibName:@"ViewController_iPhone" bundle:nil] autorelease]; 
} else { 
    viewController = [[[ViewController alloc] initWithNibName:@"ViewController_iPad" bundle:nil] autorelease]; 
} 
[self.navigationController pushViewController:viewController animated:YES]; 
+0

Myślę, że za pomocą tej techniki mogę zająć się małymi różnicami w logice na kontrolerze, prawda? Chcę uniknąć duplikowania kodu, ale przy różnych okazjach zachowuję się inaczej. – momo

+0

@momo to jest sposób w jaki ja też to robię. – huesforalice

0

UIViewController i XIB odpowiednio.

Zobacz także .

Powiązane problemy