0

我正在开发一个在文件夹和文件之间使用 CoreData 一对多关系的项目。为了显示这一点,我使用 UISplitViewController,文件夹显示在 MasterView 上,单击每个文件夹时,文件显示在 DetailView 上。文件夹和文件都是动态添加的。

我以这种方式以编程方式创建了 UISPlitViewController

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{

       FolderViewController = [[FolderViewController alloc] initWithNibName:@"FolderViewController_iPad" bundle:nil];


        UINavigationController *masterNavigationController = [[UINavigationController alloc] initWithRootViewController:FolderViewController];
        FolderViewController.managedObjectContext = self.managedObjectContext;

        fileViewController = [[fileViewController alloc] initWithNibName:@"fileViewController_iPad" bundle:nil];
        UINavigationController *detailNavigationController = [[UINavigationController alloc] initWithRootViewController: fileViewController];

        FolderViewController.fileViewController = fileViewController;

        self.splitViewController = [[UISplitViewController alloc]init];
        self.splitViewController.delegate = fileViewController;
        self.splitViewController.viewControllers = @[masterNavigationController, detailNavigationController];

        self.window.rootViewController = self.splitViewController;

}

这将我的 ipad 一分为二。左边是 FolderViewController,右边是 FileViewController。

我的主视图从不隐藏,在任何方向。

我在 Master 和 DetailView 上都有一个按钮,它以这种方式通过 splitViewController 模态打开常见的 EditViewController

- (void)Buttonclick
{

AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];       
        testViewController = [[EditViewController alloc] initWithNibName:@"EditViewController" bundle:nil];
        m_editViewController.modalPresentationStyle = UIModalPresentationFormSheet;

        [appDelegate.splitViewController presentModalViewController:m_editViewController animated:YES];
}

当我关闭此视图时,我会相应地添加文件夹或文件。

我以这种方式驳回这种观点

[self dismissModalViewControllerAnimated:YES];

我在这里几乎没有疑问

1)当我启动应用程序时,来自两个视图控制器的所有 imp(main) 函数都会被调用。可以吗?

2)当我从 DetailView 打开此 ModalView 时,会调用 NSFetchResultsController 的委托函数,这些函数位于 MasterView 中。那样行吗?

3)当这些函数被调用时,我的逻辑在某些情况下会失败。

问候兰吉特

4

0 回答 0