【问题标题】:How to move between different views in iPhone如何在 iPhone 的不同视图之间移动
【发布时间】:2011-03-09 22:29:55
【问题描述】:

我的 iPhone 应用中有一个登录视图。如果用户成功通过身份验证,我想将他从 LoginViewController 屏幕移动到 MyViewController 屏幕。下面是我的代码,

if([serverOutput isEqualToString:@"Yes"]){
        NSLog(@"Authentication correct");

        if(self.myviewController==nil)
        {
            MyViewController *myController=
            [[MyViewController alloc]initWithNibName:@"MyView" bundle:[NSBundle mainBundle]];
            self.myviewController=myController;
            [myController release];
        }
}

但不知何故,当我单击登录按钮时,即使身份验证正确,该应用程序也没有执行任何操作。由于我是 iphone 应用程序开发的新手,任何人都可以帮我编写代码..

【问题讨论】:

    标签: iphone xcode ios4 uiviewcontroller


    【解决方案1】:

    要在您想要阅读UINavigationControllers 的视图之间进行转换。 UINavigationController 是一个管理视图层次结构的对象。 UINavigationController 就像在应用程序流中从一个视图转到另一个视图的路线图,它通过调用方法 pushViewController:animated(转换到新的视图控制器)和 popViewController:animated(转换返回预览视图)。

    对于您的项目,您需要执行以下操作。

    • 分配并初始化UINavigationController(如果您计划在登录屏幕上作为程序启动的地方,则在您的应用程序委托中)并将其根视图分配给您的登录视图控制器。
    • 如果用户已成功通过身份验证,您将构建一个您想要转换到的 UIViewController 实例,然后通过调用 pushViewController:animated: 指示 UINavigationController 将下一个视图控制器推送到导航堆栈上
    • 此时假设您希望用户退出并再次返回登录屏幕,您可以调用此方法popViewController:animated

    Here'sUINavigationController 的类参考,帮助您入门。它有一些很棒的图片来解释它的结构。

    【讨论】:

    • 很高兴为您提供帮助,希望您喜欢 iOS 开发。
    【解决方案2】:

    使用UINavigationController

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-05
      • 1970-01-01
      • 1970-01-01
      • 2013-02-01
      • 2018-04-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多