JTRevealSidebar推送到ViewController

时间:2013-03-12 20:14:26

标签: iphone ios xcode ios6

我在左侧滑动条上使用JTRevealSidebar V2和UITableView

我不知道如何通过发送消息来推送到其他ViewController。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
    if (self.sidebarDelegate) {
       NSString *text = [self.leftList objectAtIndex:indexPath.row];
        if ([text isEqual:@"Warenkorb"]) {
            NSLog(@"Ist warenkorb");
           // How to push/create/bring2top view of msCartViewController Identified by "Cart"?
           // NSLog works
        }
    }
}

如何做到这一点?

2 个答案:

答案 0 :(得分:1)

在rootviewcontroller中,您将分配一个新的UIViewController,然后将其推送到UINavigation堆栈。

例如:

UIViewController *myViewController = [[UIViewController alloc] init];

myViewController.title = @"My First View";

myViewController.view.backgroundColor = [UIColor redColor];

//to push the UIView.

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

请记住在根视图控制器中执行此操作! 希望这会有所帮助。

答案 1 :(得分:0)

也许,您的问题是如何从情节提要中获取实例,因为我看到您在情节提要中将msCartViewController称为“ Cart”。

或者也许您无法获得用于推送的导航控制器。

第一个问题

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle: nil];
msCartViewController* vc=[storyboard instantiateViewControllerWithIdentifier:@"Cart"];

对于第二个问题,您需要将导航控制器指针存储到您可以访问的某个地方,例如在单例的dictionary属性中。就像

// at first make a singleton with a dictionary property. here I call it YourNavigationCenter

UINavigationController *navigationController = [YourNavigationCenter sharedCenter].navigationDictionary[@"yourNavigationName"];
[navigationController pushViewController:self animated:YES];

如果这些解决方案不能解决您的问题,请发表评论。