0

FirstViewController我在我的中创建了一个消息框TabBarController

- (void)pressedButton:(id)sender {
     [[[UIAlertView alloc] initWithTitle:@"Snap it" message:@"Take a picture"
                               delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil]
     show];

当用户单击“确定”时,我希望他们被重定向到SecondViewController.

知道怎么做吗?

提前致谢。

4

1 回答 1

0

如果您将标签栏控制器连接到“ IBOutlet”(或对它有其他引用),则切换标签就像更新selectedIndex属性一样简单(我已经为您链接了 Apple 文档)。

编辑:

将您的代码更改为此。

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
    // if you have connected your tab bar controller to an IBOutlet named myTabBarController
    if(myTabBarController)
    {
        // first tab bar controller is zero, second tab bar controller is 1, etc.
        myTabBarController.selectedIndex = 1;         
    } else {
        NSLog( @"tabBarController is nil and probably not set correctly" ); 
    }
}

- (void)pressedButton:(id)sender {
    UIAlertView * alertView = 
        [[UIAlertView alloc] initWithTitle:@"Snap it" message:@"Take a picture" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
    if(alertView)
    {
        [alertView show];
    }
}

这假设您已将标签栏控制器正确设置为 IBOutlet。另请注意,我已将警报视图上的“委托”设置为“自我”(即,如果使用“ ”作为委托,“ clickedButtonAtIndex”方法必须存在于同一对象和类中)。self

于 2012-07-01T11:53:11.660 回答