Pracuję nad nową aplikacją, która ma być uniwersalna dla iPhone'a i iPada. Zacząłem od kreatora "Utwórz aplikację opartą na oknach" i utworzyłem osobnych delegatów aplikacji w grupach "iPhone" i "iPad". Ponieważ już dobrze znałem iPhone'a, wykonałem tę część mojego projektu, a teraz jestem gotów zrobić kilka rzeczy na iPada.Jak uruchomić aplikację uniwersalną na symulatorze iPhone 3.1.3?
Więc ... Zacząłem od dodania kontrolera UISplitViewCentrator do mojego delegata na iPada, przełączam Active SDK na 3.2 i działa! Ale kiedy przełączam się z powrotem do wersji 3.1.3 i próbuję uruchomić go w symulatorze, budowanie i uruchamianie kończy się niepowodzeniem. Na początek widzę:
Mam zestaw Base SDK ustawiony na 3.2, a mój docelowy wdrożenia ustawiony na 3.1.3. Myślałem, że to wystarczy. Ale znalazłem również w dokumentacji tej metody warunkowo kompilacji:
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 30200
MyIPadViewController* vc;
// Create the iPad view controller
#else
MyIPhoneViewController* vc;
// Create the iPhone view controller
#endif
Czy muszę to robić wszędzie? Wygląda na to, że do dodania jest bardzo dużo kodu (że i tak pozbędę się w krótkim czasie na 4.0), więc czuję, że muszę zrobić coś złego. I nawet nie mam pojęcia, jak to działa dla rzeczy takich jak deklaracje @property lub @synthesize.
tl; dr wersja pytania - czy brakowało mi jakiegoś ustawienia?
Odpowiedź progrmr jest bardziej odpowiednia, zaakceptuj ją tak, aby czytelnicy mogli łatwo uzyskać właściwą odpowiedź. –