1

私の最初の質問

DDMenuController(facebook 分割メニュー) RootviewController 上にある必要がありますか? rootViewCotrollerにプッシュする他のviewControllerにはできませんか?

答えが「いいえ」の場合

2 番目の質問

私はこのサンプルを使用しているため、Facebookのような分割viewControllerを作成しようとしています

https://github.com/devindoty/DDMenuController

今私がやりたいことは、ルートコントローラーのappdelegateでDDMenuControlをrootviewcontrollerとして設定したくないということです。他のすべてのViewControllerをプッシュするビューボタンがあります

だから私が欲しいのは私のrootViewControllerのボタンからです。別のコントローラーをプッシュすると、そのビューがプッシュされ、同時にDDMenuControllerもあるはずです

だから何が起こるかはナビゲーションバーにあり、戻るボタンはありませんFacebookのような分割画面ボタンがあり、そこから別のView Controllerに行くことができます

ここで、これまでに達成したことをお話ししましょう rootViewController が表示され、そこから他のViewControllerをプッシュし、ナビゲーションバーに分割ボタンも表示されますが、機能していません これをすべて明確にするためにコーディングする必要があります

これは、アプリデリゲートで rootViewContoller を設定する方法です

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

    *)launchOptions
    {

        FirstPadViewController *mainController = [[FirstPadViewController alloc] init];
        navController = [[UINavigationController alloc] initWithRootViewController:mainController];



        self.window.rootViewController = navController;

        self.window.backgroundColor = [UIColor whiteColor];
        [self.window makeKeyAndVisible];
        return YES;
    }

そのため、他のviewControllerをプッシュできる場所からいくつかのボタンが表示されます

これは私が他のViewControllerをプッシュする方法です

- (IBAction)goToCamera:(id)sender {

    AROverlayPadViewController *svController = [[AROverlayPadViewController alloc] init];

    [self.navigationController pushViewController:svController animated:YES];

    [svController release];
    svController = nil;
}

そのため、AROverlayPadViewController がプッシュされています

AROverlayPadViewController の viewWillAppear では、これは Facebook のような分割画面を実現するために私が行うことです

-(void)viewWillAppear:(BOOL)animated{


        DDMenuController *rootController = [[DDMenuController alloc] initWithRootViewController:self];


        LeftController *leftController = [[LeftController alloc] init];
        rootController.leftViewController = leftController;
    }

分割ボタンが表示されますが、押しても機能しません

今、私は本当に何をすべきか手がかりがありません

4

1 に答える 1

0

最初の質問への回答: 実際にはイエスです。これは、あなたをあなたに送るメソッドで、あなたがそれを行う方法ですnextScreen:

-(void) goToAnotherController {
    OtherViewController *nextScreen = [OtherViewController alloc] init];
    UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:nextScreen];
    DDMenuController *menuController = (DDMenuController*)((AppDelegate*) [[UIApplication sharedApplication] delegate]).menuController;
    [menuController setRootController:navController animated:YES];
}
于 2014-02-13T17:23:30.233 に答える