UISplitViewController和CoreData

时间:2013-05-14 12:26:00

标签: ios core-data uisplitviewcontroller

我正在开发一个使用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分成两部分。 Leftside是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(主要)功能都被调用。是吗?

2)当我从DetailView打开时关闭这个ModalView时,会调用NSFetchResultsController的委托函数,这些函数在MasterView中。那可以吗?

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

此致 兰吉特

0 个答案:

没有答案