1

新しい Xcode プロジェクトをゼロから作成しています。しかし、プロジェクトを実行すると、常に別のプロジェクト (同じ名前) のビュー コントローラー/シーンが表示されます。絵コンテ(今のところiPadの絵コンテ、iPhone版は作っていません)は新しいシーンのように見えますが、シミュレーターでアプリを実行すると、古いアプリのシーンが表示されます。

古いファイルをコピーしていません。代わりに、テスト用の iPad ストーリーボードをゼロから (再) 作成し、最も基本的なファイルから新しいファイルにテキストのみをコピーしました。私が新しいプロジェクトに持っているファイルは、AppDelegate.h/mViewController.h/m以外にMainStoryBoard_iPhone.storyboardとだけですMainStoryBoard_iPad.storyboard

この問題は、同じ名前の古いプロジェクトが存在することに関連しています。私はこの名前が欲しいと決めました。新しいプロジェクトに別の名前を付けて、この問題が修正された後に名前を変更することはできますか? または、既に作成したすべてのファイルを消去する以外に、何ができますか (それらには良いものが含まれているため)。

このapplication:方法は少し複雑なので、問題が発生した場合に備えてコピーしています。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    // Override point for customization after application launch.
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
        UIStoryboard *sb = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil];
        BDViewController *vc = [sb instantiateInitialViewController];
        self.viewController = (id)vc;
    } else {
        UIStoryboard *sb = [UIStoryboard storyboardWithName:@"MainStoryboard_iPad" bundle:nil];
        BDViewController *vc = [sb instantiateInitialViewController];
        self.viewController = (id)vc;
    }
    self.window.rootViewController = self.viewController;

    [self.window makeKeyAndVisible];

    return YES;
}
4

1 に答える 1

2

問題はバンドル識別子です。アプリケーション テンプルはアプリ名から自動生成しますが、Info.plist で変更できます。

これが新しいアプリで、古いアプリがストアに存在する場合、同じバンドル ID またはアプリ名を使用することはできません。

これがストアに公開されたことのない古いアプリの新しいバージョンである場合は、シミュレーターをリセットするだけです (メニュー "iOS シミュレーター" -> "コンテンツと設定のリセット")。

これが公開された新しいバージョンである場合は、バージョン番号を更新する必要があります。

于 2013-05-05T18:59:21.997 に答える