2012-04-03 5 views
0

Ich entwickle eine Universal-App, wo ichobjective-c: Wie von AppDelegate in Universal App bewegen?

imageTracker_iPhone.xib 
imageTracker_iPad.xib 
imageTracker.h 
imageTracker.m 

ich von AppDelegate_iPhone zu bewegen, um imageTracker wollen haben. Ich tue dies in didFinishLaunchingWithOptions aber seine Arbeit nicht vor diesem Code, den ich

imageTracker *vRDi = [[imageTracker alloc] initWithNibName:@"imageTracker_iPhone" bundle:nil]; 
     [self.view addSubview:vRDi.view]; 

wurde mit, aber es gab Fehler Anfrage Mitglied ‚view‘ in etwas keine Struktur oder Union . Auch wenn der Code wie folgt ist

[window addSubview:vRDi.view]; 

jetzt Die Funktion ist wie unten und es funktioniert nicht. Ich möchte von AppDeligate zu imageTracker wechseln. bitte helfen

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

    [window addSubview:imageTracker.view];  
    [self.window makeKeyAndVisible]; 

    return YES;  
} 

In diesem Fall ist es nicht zu imageTracker_iPhone nicht bewegt, weil keine wo auf diese Datei zu bewegen, sagen hat, so wollen wissen, dass, wie das die Datei sagen, entweder imageTracker_iPhone oder imageTracker_iPad zu bewegen.

+0

könnte einige Körper den Grund der Abstimmung unten erzählen. – Azhar

+0

Da ich es nicht war, kann ich es dir nicht mit Sicherheit sagen, aber wenn jemand sagt "es funktioniert nicht", ohne zu beschreiben, welche Art von "nicht funktioniert" meinen sie oder erhalte einen Fehler ohne zu sagen was der Fehler war, ich Ich bin versucht. :-) –

+0

danke Philipp, jetzt habe ich die Frage klarer gemacht. – Azhar

Antwort

0

Wahrscheinlich möchten Sie den rootViewController des Delegiertenfensters so einstellen, dass Ihr erster Controller aktiv ist. (Wenn Sie eine neue Test-App von einem einzigen Controller, Nicht-Storyboard-Vorlage erstellen, können Sie die Art von Code in DidFinishLaunchingWithOptions benötigt sehen.)

Edit: Eigentlich ist es noch einfacher als das. Wenn Sie beim Erstellen eines einzelnen View-Controller-Projekts eine universelle App angeben, wird der genaue Code zum Testen der Art des Geräts erstellt und die entsprechende .xib-Datei geladen. (Xcode 4.2, zumindest.)

0

Ihr Code sollte so etwas wie diese

imageTracker *vRDi; 
Bool isiPhone = UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone; 
if(isiPhone) 
    vRDi = [[imageTracker alloc] initWithNibName:@"imageTracker_iPhone"; 
else 
    vRDi = [[imageTracker alloc] initWithNibName:@"imageTracker_iPad"; 

und stellen Sie sicher, dass Ihre Verbindungsansicht Steckdose in beiden xib sind und der Eigentümer der Datei ist „imageTracker“ Klasse.

Verwandte Themen