0

ストーリーボード識別子を使用してテーブルビューセルをタップすると、詳細ビ​​ューコントローラーをプッシュする必要があります。私はすでにView Controllerを設計しています。左メニューのテーブル ビュー セルをタップして、設計された画面に移動する必要があります。LGSideMenuController を使用しています

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
if (indexPath.row == 0) {

    ProfileViewController *profileVC = (ProfileViewController*)[mainStoryboard instantiateViewControllerWithIdentifier:PCProfileVC];
    [self.leftMenuVC navigateToViewController:@"profileVC"];
}}

-(void)navigateToViewController:(UIViewController*)viewController{


[(UINavigationController *)[self sideMenuController].rootViewController pushViewController:viewController animated:YES];
[[self sideMenuController] hideLeftViewAnimated:YES completionHandler:nil];}

私がするのを手伝ってください。ありがとう

4

2 に答える 2

0

rootViewController で viewController をプッシュするのはなぜですか。このコード スニペットが ViewController.m に記述されている場合は、置き換えてみてください。

[(UINavigationController *)[self sideMenuController].rootViewController pushViewController:viewController animated:YES];

[[self sideMenuController].rootViewController.navigationController pushViewController:viewController animated:YES];

識別子 PCProfileVC が正しい場合、このコードは機能するはずです。

UINavigationController で ViewController をプッシュする方法については、このリンクを参照してください。

于 2016-08-03T15:14:34.727 に答える
-1

このコードを試してください:

YourViewControllerClass *viewController = [[UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil] instantiateViewControllerWithIdentifier:@"ViewController"];
 // instanciate your viewcontroller 
    [(UINavigationController *)[self sideMenuController].rootViewController pushViewController:viewController animated:YES]; //push your viewcontroller 
    [[self sideMenuController] hideRightViewAnimated:YES completionHandler:nil]; //hide the menu 
于 2016-08-03T15:24:41.477 に答える