Oczekuje się, że aplikacje będą miały kontroler widoku głównego po zakończeniu uruchamiania aplikacji

W mojej konsoli pojawia się następujący błąd:

Oczekuje się, że aplikacje będą miały kontroler widoku głównego po zakończeniu uruchamiania aplikacji

Poniżej moja metoda application:didFinishLaunchWithOptions:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    // Set Background Color/Pattern
    self.window.backgroundColor = [UIColor blackColor];
    self.tabBarController.tabBar.backgroundColor = [UIColor clearColor];
    //self.window.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"testbg.png"]];

    // Set StatusBar Color
    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleBlackTranslucent];

    // Add the tab bar controller's current view as a subview of the window
    self.window.rootViewController = self.tabBarController;
    [self.window makeKeyAndVisible];
    return YES;
}

W Interface Builder, delegat UITabBarController jest podłączony do delegata aplikacji.

Ktoś wie jak rozwiązać ten problem?

Author: ArtSabintsev, 2011-09-23

30 answers

Miałem ten sam problem. Sprawdź główne.m. ostatni argument powinien być ustawiony na nazwę klasy, która implementuje protokół UIApplicationDelegate.

retVal = UIApplicationMain(argc, argv, nil, @"AppDelegate");
 187
Author: sho,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-10-11 18:35:43

Zastąp w AppDelegate

 [window addSubview:[someController view]];

Do

  [self.window setRootViewController:someController];
 424
Author: OrdoDei,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-09-13 02:51:03

Miałem ten sam błąd podczas próby zmiany pierwszego kontrolera widoku, który został załadowany w

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

Na początku nie wiedziałem dokładnie, skąd pochodzi błąd, więc zawęziłem go i dowiedziałem się, co poszło nie tak. Okazuje się, że próbowałem zmienić wyświetlanie widoku, zanim faktycznie pojawił się na ekranie. Rozwiązaniem było więc przeniesienie tego kodu w viewcontroller, co sprawiało mi kłopoty od

- (void)viewDidLoad

Do

- (void)viewDidAppear:(BOOL)animated

I błąd przestał się pojawiać. Mój problem został spowodowany przez zrobienie UIAlertView show.

W Twoim przypadku proponuję sprawdzić kod w aktywnym kontrolerze widoku tabbarcontrollera(ponieważ prawdopodobnie jest to problem w tym kontrolerze widoku). Jeśli to nie zadziała, spróbuj ustawić ustawienia początkowe w pliku nib zamiast w kodzie - lub jeśli chcesz to zrobić w kodzie, spróbuj przenieść kod do aktywnego tabbarcontrollera odpowiednia metoda viewcontrollera.

Powodzenia!
 69
Author: Warkst,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-09-23 06:23:26

To mi się przytrafiło. / Align = "left" / plik plist. Określ główną nazwę bazy plików nib.(Powinno być MainWindow.xib). Mam nadzieję, że to pomoże.

Tutaj wpisz opis obrazka

 46
Author: Sunny,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-04-17 15:47:40

Otrzymałem to po uruchomieniu szablonu "pusta aplikacja", a następnie ręcznym dodaniu XIB. Rozwiązałem to, ustawiając główną nazwę Stalówki zgodnie z sugestią Sunny ' ego. Brakującym krokiem w tym scenariuszu jest usunięcie

self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];

Od

application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

Ponieważ nadpisze instancję okna utworzonego w pliku Xib. Zakładając, że stworzyłeś Kontroler ViewController i połączyłeś go z delegatem okna i aplikacji w pliku XIB.

 45
Author: jlujan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-12-02 19:07:17

Ostatnio napotkałem ten sam problem podczas budowania projektu z ios5 sdk. Na początku budował i działał poprawnie, ale potem pojawił się błąd.
W moim przypadku rozwiązanie było dość proste.
Brakowało tylko tego, że w jakiś sposób usunięta została właściwość Main Interface w zakładce PODSUMOWANIE celu mojej aplikacji. Więc musiałem ustawić go ponownie.


Jeśli nie o to chodzi i jeśli tabBarController jest nadal zerowy, zawsze możesz programowo Utwórz kontroler okna i root. Jako alternatywę dodałem następujący kod do mojego projektu

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{ 
    if (!window && !navigationController) {
        NSLog(@"Window and navigation controller not loaded from nib. Will be created programatically.");
        self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
        UIViewController *viewController1, *viewController2;
        viewController1 = [[[FirstViewController alloc] initWithNibName:@"FirstViewController_iPhone" bundle:nil] autorelease];
        viewController2 = [[[SecondViewController alloc] initWithNibName:@"SecondViewController_iPhone" bundle:nil] autorelease];

        self.tabBarController = [[[UITabBarController alloc] init] autorelease];
        self.tabBarController.viewControllers = [NSArray arrayWithObjects:viewController1, viewController2, nil];
        self.window.rootViewController = self.tabBarController;

    }
    else {
        [window addSubview:[tabBarController view]];
    }
    [self.window makeKeyAndVisible];
    return YES;
}

To zadziała tylko wtedy, gdy zaimplementowane zostanie również rozwiązanie sho.

 27
Author: denicija,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-09-30 05:01:10

Uaktualniłem do iOS9 i zacząłem usuwać ten błąd znikąd. Udało mi się to naprawić, ale dodałem poniższy kod do - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

NSArray *windows = [[UIApplication sharedApplication] windows];
for(UIWindow *window in windows) {
    if(window.rootViewController == nil){
        UIViewController* vc = [[UIViewController alloc]initWithNibName:nil bundle:nil];
        window.rootViewController = vc;
    }
}
 24
Author: Mike Flynn,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-02-24 09:33:15

Żadna z powyższych sugestii nie rozwiązała mojego problemu. Mój był taki:

Dodaj:

window.rootViewController = navigationController;

Po:

[window addSubview:navigationController.view];

In my appdelegate ' s

- (void)applicationDidFinishLaunching:(UIApplication *)application {
 21
Author: RyeMAC3,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-01-26 03:22:46
  • Wybierz swoje "okno" w pliku Nib
  • w "Inspektor atrybutów" zaznacz "widoczny przy starcie"

obraz![]

  • dzieje się tak, gdy plik nib jest tworzony ręcznie.
  • Ta poprawka działa dla zwykłego trybu stalówki-nie trybu storyboard
 20
Author: bearMountain,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-09-04 22:05:50

Jak dodać RootViewController dla iOS5

Jeśli Twoja aplikacja do tej pory nie używała RootViewController, wystarczy utworzyć jeden;) naciskając Plik > Nowy > nowy plik; select UIViewController subclass nazwij go RootViewController , odznacz z XIB dla interfejsu użytkownika (zakładając, że już go masz) i umieść ten kod w aplikacji:: didFinishLaunchingWithOptions

rootViewController = [[RootViewController alloc] init];
window.rootViewController = rootViewController;

Na pewno-musisz zaimportować RootViewController.h i utworzyć zmienną

Oto fajny artykuł o RootViewController i AppDelegate,

 17
Author: rémy,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-02-24 13:39:13

Miałem również ten błąd, ale w przeciwieństwie do żadnej z odpowiedzi wymienionych wcześniej mój był ponieważ miałem niezauważony metodę 'loadView' w moim nowo wygenerowanym kontrolerze (xcode 4.2, ios5).

 //Implement loadView to create a view hierarchy programmatically, without using a nib.
- (void)loadView  
{
}

Powiedział mi nawet, że metoda służy do programowego tworzenia widoku, ale przegapiłem ją, ponieważ wyglądała tak podobnie do innych metod, takich jak viewDidLoad, których normalnie używam, nie złapałem.

Aby rozwiązać po prostu usuń tę metodę, jeśli nie tworzysz programowo widoku hierarchia aka za pomocą stalówki lub storyboard.

 11
Author: trcarden,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-11-16 08:45:10

Ja też mam ten problem. mam swój projekt uruchomiony w xcode4. 2. 1. przeczytałem tam wszystkie komentarze, ale dla mnie nikt nie jest fajny. po jakimś czasie okazuje się, że skomentowałem fragment kodu.

//self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
/ Align = "left" / dla mnie wszystko jest ok. mam nadzieję, że to wam pomoże.
 11
Author: Bruce Lee,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-12-13 13:43:20

Upewnij się, że masz tę funkcję w swojej aplikacji.

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:    (NSDictionary *)launchOptions {
   return YES;
}

Upewnij się, że didFinishLaunchingWithOptions zwraca Yes. Jeśli zdarzyło ci się usunąć linię "return YES", spowoduje to błąd. Ten błąd może być szczególnie powszechny u użytkowników storyboardu.

 11
Author: anticyclope,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-03-12 10:12:06

Nastąpiła niewielka zmiana wokół systemu iOS 5.0 lub tak, wymagająca posiadania kontrolera widoku głównego. Jeśli kod jest oparty na starszym przykładowym kodzie, takim jak GLES2Sample , to w tych przykładach kodu nie został utworzony żaden kontroler widoku głównego.

Aby naprawić (na przykład Ten GLES2Sample), bezpośrednio w applicationDidFinishLaunching, tworzę kontroler widoku głównego i dołączam do niego mój glView.

- (void) applicationDidFinishLaunching:(UIApplication *)application
{
  // To make the 'Application windows are expected
  // to have a root view controller
  // at the end of application launch' warning go away,
  // you should have a rootviewcontroller,
  // but this app doesn't have one at all.
  window.rootViewController = [[UIViewController alloc] init];  // MAKE ONE
  window.rootViewController.view = glView; // MUST SET THIS UP OTHERWISE
  // THE ROOTVIEWCONTROLLER SEEMS TO INTERCEPT TOUCH EVENTS
}

To sprawia, że Ostrzeżenie zniknie i tak naprawdę nie wpływa na Twoją aplikację w inny sposób.

 10
Author: bobobobo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-08-14 20:31:05

Spróbuj podłączyć IBOutlet kontrolera paska kart do widoku głównego w Kreatorze interfejsu zamiast

self.window.rootViewController = self.tabBarController;

Ale tak naprawdę nie widziałem wcześniej takiego błędu.

 9
Author: d.lebedev,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-09-22 20:44:35

Z moim pierwszym widokiem to MenuViewController dodałem:

MenuViewController *menuViewController = [[MenuViewController alloc]init];
self.window.rootViewController = menuViewController;

W metodzie App Delegate:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
}
Zadziałało.
 9
Author: cujino,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-11-09 09:29:11

Problem rozwiązałem wykonując następujące czynności (żadne z powyższych rozwiązań nie pomogło):

Z rozwijanego menu powiązanego z "Main Interface" wybierz inny wpis, a następnie ponownie wybierz "MainWindow", a następnie Przebuduj.

Tutaj wpisz opis obrazka

 8
Author: RawMean,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-02-21 00:40:13

Natknąłem się na ten sam problem, ale używałem storyboard

Przypisanie mojego storyboard InitialViewController do mojego okna rootViewController.

W

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{
...
UIStoryboard *stb = [UIStoryboard storyboardWithName:@"myStoryboard" bundle:nil];
self.window.rootViewController = [stb instantiateInitialViewController];
return YES;
}
I to rozwiązało problem.
 8
Author: thesummersign,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-06-28 07:40:44

Zacząłem mieć ten sam problem zaraz po aktualizacji do Xcode 4.3 i tylko podczas uruchamiania projektu od zera (tzn. Utwórz pusty projekt, następnie utwórz UIViewController, a następnie utwórz oddzielny plik nib).

Po umieszczeniu wszystkich linii i upewnieniu się, że mam poprawne połączenia, ciągle otrzymywałem ten błąd, a plik nib, który próbowałem załadować przez kontroler widoku (który był ustawiony jako rootController), nigdy nie pojawił się w symulatorze.

I created a pojedynczy widok szablonu przez Xcode i porównał go do mojego kodu i w końcu znalazł problem!

Xcode 4.3 domyślnie dodaje metodę - (void)loadView; do sekcji implementacja kontrolera widoku. Po uważnym przeczytaniu komentarzy w środku stało się jasne, na czym polega problem. Komentarz wskazywał, aby nadpisać metodę loadView, jeśli tworzymy widok programowo (i parafrazuję), w przeciwnym razie nie nadpisać loadView, jeśli używamy nib. Nie było w tym nic innego. metoda, więc w afect nadpisywałem metodę (i nic nie robiłem) podczas używania pliku nib, co dało błąd.

Rozwiązaniem było albo całkowite usunięcie metody loadView z sekcji implementacja, albo wywołanie metody nadrzędnej przez dodanie [super loadView].

Usunięcie go byłoby najlepsze, jeśli użycie pliku NIB jako dodawania innego kodu spowoduje jego nadpisanie.

 7
Author: Raz,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-05-16 21:56:41

Miałem ten sam komunikat o błędzie w dzienniku. Miałem UIAlertView pop up w aplikacji: didFinishLaunchingWithOptions. Rozwiązałem to opóźniając wywołanie alertView, aby dać czas kontrolerowi widoku głównego na zakończenie ładowania.

W aplikacji: didFinishLaunchingWithOptions:

[self performSelector:@selector(callPopUp) withObject:nil afterDelay:1.0];

Który wywołuje po 1 sekundzie:

- (void)callPopUp
{
    // call UIAlertView
}
 6
Author: janeway,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-01-20 20:25:55

Miałem ten sam problem. Jeśli budujesz aplikację opartą na oknach "od zera", tak jak ja, musisz wykonać następujące czynności: (Uwaga, są to kroki dla Xcode 4.2.)

0. Upewnij się, że delegat aplikacji jest zgodny z protokołem UIApplicationDelegate.

Na przykład, załóżmy, że nasz delegat nazywa się MyAppDelegate. W MyAppDelegate.h, powinniśmy mieć coś takiego:

@interface MyAppDelegate : 
    NSObject <UIApplicationDelegate> // etc...

1. Określ delegata aplikacji w menu głównym.m

Dla przykład,

#import "MyAppDelegate.h"

int main(int argc, char *argv[])
{
  @autoreleasepool {
    return UIApplicationMain(argc, argv,
      nil, NSStringFromClass([MyAppDelegate class]));
  }
}

2. Utwórz plik interfejsu głównego okna.

Aby to zrobić, kliknij prawym przyciskiem myszy projekt i wybierz nowy plik. Następnie wybierz Okno z sekcji iOS - > interfejs użytkownika.

Po dodaniu pliku do projektu przejdź do podsumowania projektu (kliknij lewym przyciskiem myszy na projekcie; kliknij podsumowanie.) Pod iPhone / iPod Deployment Info (i odpowiedniej sekcji iPad, Jeśli chcesz) i wybierz nowy plik interfejsu w" Main Interface " combo box.

3. Podłącz to wszystko w edytorze interfejsu

Wybierz plik interfejsu z listy pliki, aby wyświetlić edytor interfejsu.

Upewnij się, że okno narzędzia jest otwarte.

Dodaj nowy obiekt, przeciągając obiekt z listy obiektów w okienku narzędzia do miejsca Powyżej Poniżej obiektu okna. Wybierz obiekt. Kliknij Inspektora tożsamości w okienku narzędzia. Zmień klasę na delegata aplikacji (MyAppDelegate, w tym przykład.)

Pokaż Inspektora połączeń dla MyAppDelegate. Podłącz wylot okna do okna, które już istnieje w pliku interfejsu.

Kliknij właściciela pliku po lewej stronie, a następnie kliknij Inspektora tożsamości w okienku narzędzia. Zmień klasę na UIApplication

Pokaż Inspektora połączeń dla właściciela pliku. Podłącz gniazdo delegata do obiektu MyAppDelegate.

4. Na koniec, a co bardzo ważne, kliknij na obiekt okna w plik interfejsu. Otwórz Inspektora atrybutów. Upewnij się, że zaznaczono opcję "widoczny przy uruchomieniu".

To wszystko, co musiałem zrobić, żeby to dla mnie działało. Powodzenia!
 6
Author: Tom,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-02-07 18:55:12

Jeśli używasz MTStatusBarOverlay, otrzymasz ten błąd.

MTStatusBarOverlay tworzy dodatkowe okno ([[UIApplication sharedApplication] windows), które nie ma kontrolera głównego.

To chyba nie sprawia problemu.

 6
Author: Confused Vorlon,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-11-02 13:21:33

Otrzymałem ten sam błąd po zastąpieniu mojego interfejsu użytkownika Scenorysem, używając XCode 4.6.3 i iOS 6.1

Rozwiązałem to, usuwając cały kod z didFinishLaucnhingWithOptions w AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    return YES;
}
 6
Author: Pétur Ingi Egilsson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-08-16 18:42:56

OrdoDei dał poprawną i wartościową odpowiedź. Dodaję tę odpowiedź tylko po to, aby podać przykład metody didFinishLaunchingWithOptions, która wykorzystuje jego odpowiedź, a także uwzględnia komentarze innych dotyczące kontrolera nawigacji.

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

    // Override point for customization after application launch.

    // Instantiate the main menu view controller (UITableView with menu items).
    // Pass that view controller to the nav controller as the root of the nav stack.
    // This nav stack drives our *entire* app.
    UIViewController *viewController = [[XMMainMenuTableViewController alloc] init];
    self.navigationController = [[UINavigationController alloc] initWithRootViewController:viewController];

    // Instantiate the app's window. Then get the nav controller's view into that window, and onto the screen.
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    // [self.window addSubview:self.navigationController.view];
    // The disabled line above was replaced by line below. Fixed Apple's complaint in log: Application windows are expected to have a root view controller at the end of application launch
    [self.window setRootViewController:self.navigationController];
    self.window.backgroundColor = [UIColor whiteColor];
    [self.window makeKeyAndVisible];
    return YES;
}
 5
Author: Basil Bourque,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-08-15 11:33:07

Stało się to dla mnie, ponieważ niechcący skomentowałem:

[self.window makeKeyAndVisible];

Od

- (BOOL)application:(UIApplication*) didFinishLaunchingWithOptions:(NSDictionary*)
 4
Author: nicerobot,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-11-07 03:10:09

Udało mi się ustawić początkowy kontroler widoku na ekranie podsumowania xcode.

Kliknij na górze nazwy najbardziej projektu w Eksploratorze plików po lewej stronie (powinien mieć małą ikonkę schematu). W środkowej kolumnie kliknij na nazwę projektu pod 'cele', (powinien mieć małą ikonę ' a ' ołówka obok niego). Poszukaj w obszarze "Informacje o wdrożeniu iPhone / iPod" i poszukaj "głównego interfejsu". Powinieneś być w stanie wybrać opcję z listy rozwijanej.

 4
Author: RachelD,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-12-06 16:07:03

Na górze odpowiedzi "sho", która jest poprawna (czwartym parametrem interfejsu użytkownika powinna być nazwa głównego kontrolera) dodaję kilka uwag.

Ostatnio zmieniłem "model" mojej aplikacji z korzystania z MainWindow.xib do programowego konstruowania okna. Aplikacja używała starszego szablonu, który automatycznie tworzył ten MainWindow. Ponieważ chciałem obsługiwać inny widok kontrolera XIB dla iPhone 5, łatwiej jest wybrać odpowiedni program XIB, gdy aplikacja Delegat jest tworzony. Usunąłem MainWindow.xib również z projektu.

Problem polegał na tym, że zapomniałem wypełnić czwarty parametr w UIApplication main i zapomniałem usunąć MainWindow z "Main Interface" w podsumowaniu projektu.

To spowodowało duży problem: renderowało nieszkodliwe Ostrzeżenie " oczekuje się, że aplikacje..."na urządzeniach deweloperskich, ale kiedy trafił do App Store, zepsuł się na telefonach konsumenckich, upaść, ponieważ MainWindow nie było już w pakiecie! Musiałem poprosić o przyspieszona recenzja poprawki.

Innym symptom jest to, że czasami biały blok, jak puste UIView, czasami pojawiał się, gdy ustawienia zostały zmienione i aplikacja została umieszczona na pierwszym planie. W iPhone 5 było jasne, że jest to blok 320x480. Być może brakujący MainWindow był tworzony w trybie deweloperskim, przy użyciu starego rozmiaru. Właśnie znalazłem ten błąd, gdy pierwsze doniesienia o awarii dotarły do skrzynki odbiorczej.

Instalacja aplikacji z App Store zamiast z XCode pokazała że aplikacja rzeczywiście zawiesiła się, a problem z MainWindow ujawnił się w dzienniku, więc widziałem, że nie była to jakaś specjalna kombinacja urządzeń+wersje IOS.

 4
Author: epx,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-05-10 01:37:17

Po aktualizacji do Xcode 7 i uruchomieniu mojej aplikacji na urządzeniu z iOS 9 dodałem to do mojego (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

// Hide any window that isn't the main window
NSArray *windows = [[UIApplication sharedApplication] windows];
for (UIWindow *window in windows) {
    if (window != self.window) {
        window.hidden = YES;
    }
}
 4
Author: Kevin_TA,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-09-23 19:40:12

Ten problem występuje, gdy nie masz poprawnie skonfigurowanego Kreatora interfejsów.

Upewnij się, że okno delegata aplikacji i gniazda viewController są podłączone:

W Twoim głównym oknie.xib, przytrzymaj control, kliknij app Delegate i przeciągnij do obiektu okna. Wybierz okno. Przytrzymaj control i ponownie wybierz delegat aplikacji, przeciągnij do kontrolera widoku głównego i wybierz viewController.

 3
Author: uranazo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-10-16 04:57:49

Ten błąd pojawia się również, gdy właściciel pliku MainWindow.xib jest ustawione nieprawidłowo.

Właścicielem pliku jest UIApplication
- > wstawiony obiekt klasy app delegate z wylotem okna podłączonym do window

 3
Author: JakubKnejzlik,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-11-06 01:53:27