0

iPad用のタブバーベースのアプリケーションの簡単な例をやっています。タブ管理を担当するコントローラーがあります。

@interface MainTabBarController : UITabBarController

以下のように MainTabBarController に渡される一部のビュー コントローラー:

@interface WorkspaceViewController : UIViewController

///

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

    self.tabBarRootController = [[MainTabBarController alloc] initWithNibName:@"MainTabBarController" bundle:nil];
    UIViewController *workspaceController = [[[WorkspaceViewController alloc] initWithNibName:@"WorkspaceViewController" bundle:nil] autorelease];

    self.tabBarRootController.viewControllers = [NSArray arrayWithObjects:workspaceController, nil];
    self.window.rootViewController = self.tabBarRootController;
    [self.window makeKeyAndVisible];

    [workspaceController release];
    return YES;
}

WorkspaceViewController には独自の xib ファイルがあります。この XIB ファイルを使用して、いくつかのコントロールをワークスペース ビューに追加していますが、すべて問題ありません。しかし、ツールバーを追加(xibファイルにドラッグアンドドロップ)したい場合、アプリの実行時にツールバーが表示されません。

これは私の WorkspaceViewController XIB ファイルがどのように見えるかです:

XIB ファイル

ツールバーは、アウトレット経由でコントローラーに接続されます (xib を使用)。

考えられる原因と解決方法を教えてください。私のツールバーは、ワークスペース ビューが表示されている場合にのみ表示する必要があり、ワークスペースでのみ反復する必要があります (ワークスペースはいくつかの描画を担当し、ツールバーには切り取り、貼り付け、コピーなどのオプションがあります)。

4

1 に答える 1

0

を呼び出した後、workspaceController を再度解放していますautorelease

于 2013-04-13T15:38:24.530 に答える