在这个方法里判断shouldPerformSegueWithIdentifier
能跳的话return YES,反之return NO

解决方案 »

  1.   

    多谢,按照你的建议,去掉了故事板中的跳转关系,通过代码跳转,现在是实现了我所需要的功能,但是出了个告警:
    attemp to present   **controller on login_view_controller  whose wiew is not in the window hierarchy  ,我搜了下,大都建议在viewDidAppear中来跳转,以解决这个告警的问题,但是我没法做啊,因为我要在回调函数中判断用户名、密码是否正确,正确了才跳转,这部分只能在登录button 的回调中去实现,怎么能够放到viewDidAppear中去实现?矛盾,请问各位是如何解决这个问题的,验证用户名、密码,如果验证OK才从登录界面跳转到应用的主界面。
      

  2.   


    看你如何组织的应用,你可以这样来做。在application启动的函数中处理
    将self.window.rootViewController 指向应用的主界面,这里假设为MainViewcontroller。这时判断缓存中的用户是否存在,如果存在(说明已登录)则不执行弹出动作,直接显示主界面。如果不存在说明未登录,这时要使用MainViewcontroller 来present 登录控制器loginViewController . 而不是[self  presentViewcontroller:XX  ]
      

  3.   

    我觉得不用那么复杂。直接在登录界面的button回调函数中判断输入的账号和密码是否正确。如果正确直接的通过压栈直接进入主界面。如果错误可以加一个 UIAlertView提示就OK了。干嘛要那么纠结呢?
      

  4.   


    看你如何组织的应用,你可以这样来做。在application启动的函数中处理
    将self.window.rootViewController 指向应用的主界面,这里假设为MainViewcontroller。这时判断缓存中的用户是否存在,如果存在(说明已登录)则不执行弹出动作,直接显示主界面。如果不存在说明未登录,这时要使用MainViewcontroller 来present 登录控制器loginViewController . 而不是[self  presentViewcontroller:XX  ]application启动的函数是指哪个?我看了下,main.m有
    {
     return UIApplicationMain(argc,argv,nil,NSStringFromClass([AppDelegate class]));
    }你说的是这个函数?我的启动界面原来为login,我刚才试着改设应用主界面为启动界面,是在故事面板的应用主界面的Initial Scene  (is Initial View Controller)这里打了勾,就OK了。接下来怎么做,还是有点不明白,麻烦再指教下,多谢。
      

  5.   


    看你如何组织的应用,你可以这样来做。在application启动的函数中处理
    将self.window.rootViewController 指向应用的主界面,这里假设为MainViewcontroller。这时判断缓存中的用户是否存在,如果存在(说明已登录)则不执行弹出动作,直接显示主界面。如果不存在说明未登录,这时要使用MainViewcontroller 来present 登录控制器loginViewController . 而不是[self  presentViewcontroller:XX  ]application启动的函数是指哪个?我看了下,main.m有
    {
     return UIApplicationMain(argc,argv,nil,NSStringFromClass([AppDelegate class]));
    }你说的是这个函数?我的启动界面原来为login,我刚才试着改设应用主界面为启动界面,是在故事面板的应用主界面的Initial Scene  (is Initial View Controller)这里打了勾,就OK了。接下来怎么做,还是有点不明白,麻烦再指教下,多谢。
    我说的是在AppDelegate.m 中的代理方法
    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
    中来处理。还有一点,有时使用故事板是可以让一些初学者很简单的构建应用,但去让他们忽略了应用程序本质上是如果启动的。更进一步的东西看不到,只停留在如何使用上。