使用UIButton从一个视图导航到另一个视图

时间:2011-08-31 10:47:33

标签: iphone objective-c ios

我有一个包含2个视图的应用程序。在第一个我有一个按钮,当我点击用户应该转到第二个视图。我尝试了Karoley之前解释过的内容,但它不起作用。当我点击按钮什么都没发生?

以下是我的行动代码:

-(IBAction)gotoSecondPage:(id) sender{
    NSLog(@"In gotoSecondPage");

        LeoActionViewController *aSecondPageController =
        [[LeoActionViewController  alloc] 
         initWithNibName:@"LeoActionViewController" 
         bundle:[NSBundle mainBundle]];

[self.navigationController pushViewController:aSecondPageController animated:YES];
}

LeoActionViewCOntroller是第二个视图的控制器。 它只是不切换到第二个视图。我不知道为什么

2 个答案:

答案 0 :(得分:1)

我把代码放在你的问题上这对你有帮助。首先,声明方法并打开.xib文件,然后使用选定的touchupinside连接连接到该按钮。

在.h文件中:

- (IBAction)gotoSecondPage:(id) sender;

在.m文件中:

 - (IBAction)gotoSecondPage:(id) sender
    {
        NSLog(@"In gotoSecondPage");

        LeoActionViewController *aSecondPageController = 
            [[LeoActionViewController  alloc] 
            initWithNibName:@"LeoActionViewController" 
            bundle:nil];

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

     [aSecondPageController release];
    }

答案 1 :(得分:0)

我不确定您想要切换视图的容量。

立刻想到的是你需要一个Navigation Controller。这是一个对象,允许您将视图控制器放在堆栈上,然后推送它们以显示和隐藏它们。它通过您的应用程序创建一个导航路径,并且易于使用。它还有助于许多iphone应用程序中的“标准”导航栏。

如果您只想为另一个视图更改一个视图,则可以执行许多操作,包括使用setHidden:(bool)hidden隐藏和显示不同的视图。否则,您可以使用addSubview:(UIView *)viewremoveFromSuperview完全添加和删除超级视图中的视图。