Ich arbeite an einer Universal-App und möchte auf die Werte zugreifen, die in der Datei app-info.plist in meinem Code gespeichert sind.
Grund: Ich instanziiere einen UIViewController dynamisch aus einem Storyboard mit:
UIStoryboard* storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil];
self = [storyboard instantiateViewControllerWithIdentifier:@"ExampleViewController"];
Jetzt ist es hässlich, den Storyboard-Namen @ "MainStoryboard_iPhone" oben zu haben.
Ich möchte so etwas tun wie:
UIStoryboard* storyboard = [UIStoryboard storyboardWithName:appInfo.mainStoryboardBaseNamePhone bundle:nil];
self = [storyboard instantiateViewControllerWithIdentifier:@"ExampleViewController"];
Dabei kann appInfo möglicherweise ein NSDictionary aller Werte in app-info.plist sein
quelle
Schnelle 4+ Syntax für Damos Lösung
Beispiel
quelle
Bundle
erforderlichimport SystemConfiguration
Nun, Sie können ganz einfach auf die info.plist zugreifen:
Den Namen des Storyboards erhalten:
Ich bin mir nicht sicher, ob es
UIMainStoryboardFile~ipad
erkennt , ob es sich in einem iPad befindet, und es sollte den installierten Schlüssel verwenden.quelle
quelle
NSDictionary *dict = [NSDictionary dictionaryWithContentsOfFile:path];
Sie können auch die infoDictionary-Methode in NSBundle verwenden:
quelle