在iOS 7中,使用带有SplitviewController的NavigationController的App无法正常工作

时间:2013-11-21 06:48:09

标签: ios iphone objective-c uisplitviewcontroller

参考:从iOS 6迁移到iOS 7后,我们的应用程序无法按预期使用splitviewcontroller和navigationcontroller。

Sub:我已经分步写的App流程。

  1. 从PopOverController中选择一行MasterViewController时,我们将请求传递给DetailViewController “didSelectRowAtIndexPath”具有委托“[委托SelectedViewController:self selectedrow:[rootTableContentArray objectAtIndex:indexPath.row]];”

  2. 在DetailViewController中,我们实现了delgate方法。

    - (void)SelectedViewController :( MasterViewController *)masterview selectedrow:(NSString *)selectedRow

    {

    if([selectedRow isEqualToString:@“Labor”])

      {
             appdel.splitViewController.delegate=(id)laborViewController;
             [[appdel.splitViewController.viewControllers objectAtIndex:1] setViewControllers:[NSArray arrayWithObject:laborViewController] animated:YES];
              ----
              ----
         }
    

    }

  3. 注意: 1.在iOS 6中执行时

    [[appdel.splitViewController.viewControllers objectAtIndex:1] setViewControllers:[NSArray arrayWithObject:laborViewController] animated:YES];
    

    viewdidload之前viewwillappearLaborViewController,在删除委托方法的剩余代码之前。

    1. 在iOS 7中,它正在执行-(void)SelectedViewController:(MasterViewController*)masterview selectedrow:(NSString*)selectedRow的总代码并返回MasterViewController,然后为LaborViewController调用“viewdidload”和“viewwillappear”。
    2. 这是我现在面临的iOS 7中的问题。 <{1}}在执行时未触发[[appdel.splitViewController.viewControllers objectAtIndex:1] setViewControllers:[NSArray arrayWithObject:laborViewController] animated:YES];viewwilldisappear

0 个答案:

没有答案