如何在iPhone中的不同视图之间移动

dev*_*per 0 iphone xcode uiviewcontroller ios4

我的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];
        }
}
Run Code Online (Sandbox Code Playgroud)

但是,即使身份验证正确,当我点击"登录"按钮时,应用程序也无法执行任何操作.由于我是iphone应用程序开发的新手,任何人都可以帮我解决代码问题.

Con*_*ion 6

要在您希望阅读的视图之间进行转换UINavigationControllers.A UINavigationController是管理视图层次结构的对象.该UINavigationController就像是一个路线图,为您的应用程序从一个视图到另一个流程与IT实现它通过调用方法是最基本的特征pushViewController:animated(过渡到一个新的视图控制器)和popViewController:animated(过渡回预览视图).

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

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

这是让UINavigationController您入门的课程参考.它有一些很棒的图片来解释它的结构.