展开segue似乎解除了我的视图对象的释放

时间:2014-03-30 21:57:59

标签: ios objective-c segue

我尝试使用unwind segue传递对象。我的按钮成功展开,但视图中的所有对象都是重新初始化的。我使用prepareForSegue方法成功准备我的对象,但是当我访问目标segue中的viewController时(通过操作按钮),所有对象都被重新初始化或未分配。

我对此很新,所以任何建议都会受到赞赏!这是我遇到麻烦的代码。

//在我的视图控制器中调用prepareForSegue,我试图放松。

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([[segue identifier] isEqualToString:@"ReturnInput"])
    {

        GLUPipeDataController *dataController;
        dataController.length = [[NSNumber alloc] initWithFloat:1.5];
        self.dataController = dataController;
        [self.dataController print];
    }
}

//在目标视图控制器中调用此完成。它通过控制 - 将解扣拖拽到连接面板上的出口例程在IB中链接。然后,我在文档大纲中更新了展开segue的名称。

- (IBAction)done:(UIStoryboardSegue *)segue
{

    if ([[segue identifier] isEqualToString:@"ReturnInput"])
    {
        GLUEditViewController *editController = [segue destinationViewController];

        if (editController.dataController)
        {
            self.dataController = editController.dataController;
            [self.dataController print];
            [[self tableView] reloadData];
        }
    }
    if ([[segue identifier] isEqualToString:@"ReturnInserts"]) {
        GLUEditInsertsViewController *editInsertController = [segue destinationViewController];
        if (editInsertController.listInserts) {
            self.dataController.listInserts = editInsertController.listInserts;
            [[self tableView] reloadData];
        }
    }
}

[self.dataController print]中的调用prepareForSegue会打印属性。但是,done方法中的相同调用会打印一个新初始化的对象。

0 个答案:

没有答案