Iphone iOS-如何点击按钮移动到不同的页面

Iphone iOS-如何点击按钮移动到不同的页面,iphone,objective-c,ios,ipad,uiviewcontroller,Iphone,Objective C,Ios,Ipad,Uiviewcontroller,我是一个iOS开发新手。我想通过单击按钮从当前页面(CityViewController)转到另一个页面(CountryViewController)。我该怎么做?如果这是一个非常初级的问题,请原谅。有几种方法。我假设您使用的是UINavigationController。如果是这样,那么您可以创建VC,并在父视图控制器内执行此操作 [self.navigationController pushViewController:viewController animated:YES] 因此

我是一个iOS开发新手。我想通过单击按钮从当前页面(CityViewController)转到另一个页面(CountryViewController)。我该怎么做?如果这是一个非常初级的问题,请原谅。

有几种方法。我假设您使用的是UINavigationController。如果是这样,那么您可以创建VC,并在父视图控制器内执行此操作

    [self.navigationController pushViewController:viewController animated:YES]

因此,基本上,您正在尝试构建一个多视图应用程序。有很多方法可以做到这一点。但是我会列出3个常见的-

  • [self.view insertSubview:newViewController.view atIndex:3]
  • 使用
  • 最后使用modalViewController-
    [自我呈现modalViewController:newViewController动画:是]

  • 在第二种方法中,我使用这个控制器而不使用
    UINavigationTabBar
    。隐藏此导航栏并提供自定义按钮,应根据这些按钮执行
    [self.navigationController popViewControllerAnimated]

    我遇到了相同的问题。而用户一旦登录就需要重定向到不同的页面,否则默认情况下需要留在主页中

    这是代码片段。

    这里

    在ViewController2“Identity inspector”中设置情节提要id

     N_loginmsg = @"success";
        NSString *N_loginmsg = [[NSUserDefaults standardUserDefaults]objectForKey:@"remember_loginmsg"];
            NSString *storyboardId;
            if (N_loginmsg != nil && [N_loginmsg isEqual:@"Success"])
            {
                storyboardId = @"ListViewController";
            }
            else
            {
                storyboardId = @"HomeViewController";
            }
            self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
            UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main_iPhone" bundle:nil];
            UIViewController *initViewController = [storyboard instantiateViewControllerWithIdentifier:storyboardId];
            UINavigationController *mynav = [[UINavigationController alloc]initWithRootViewController:initViewController];
            self.window.rootViewController = mynav;
            [self.window makeKeyAndVisible];
    
    ViewController2 *newView = [self.storyboard instantiateViewControllerWithIdentifier:@"viewController"];
    [self.navigationController pushViewController:newView animated:YES];