iOS6,Segue:UIViewController在移动导航堆栈时丢失数据

时间:2013-05-27 18:54:40

标签: ios uinavigationcontroller

我构建了一个viewControllers层次结构,在我的故事板场景中,我需要提前移动两个笔尖。问题是,在我返回控制器后,它似乎丢失了从DB检索所需数据很重要的id。一个笔尖前面好,但是在两个笔尖之后没有。

此外,返回后-viewWillAppear-viewDidLoad都不会被解雇。提前谢谢。

我检查了segue是否真的提供了正确的数据。最后的笔尖得到了正确的ID。因此,问题不是在segue时数据丢失。

CODE: 第一个笔尖从主笔尖接收数据。 viewWillAppear从数据库中提取数据并填写标签等。

导航从这里开始。

if([segue.identifier isEqualToString:@"toDublicates"])
{
    DublicatesViewController *controller=(DublicatesViewController*)[segue destinationViewController];
    // controller is tableViewController
    controller.typeID=self.typeID;
    controller.nominalID=self.nominalID;
    controller.regionID=self.regionID;
    controller.subCountryID=self.subCountryID;
    KMObj *obj=[self.arr objectAtIndex:0];
    controller.title=[NSString stringWithFormat:@"Dublicates | KM%@",obj.kmRef];
}

第二个笔尖。 NSLog显示数据正常。搬到最后的笔尖

if([segue.identifier isEqualToString:@"toCreateDublicate"])
{
    NewDublicateViewController *controller=(NewDublicateViewController*)[segue destinationViewController];
    controller.typeID=self.typeID;
    controller.subCountryID=self.subCountryID;
    controller.nominalID=self.nominalID;
    controller.regionID=self.regionID;
    controller.numberOfExistingDublicates=[_arr count];
}

在最终控制器中触发的方法

-(void)back {

[self.navigationController popViewControllerAnimated:YES];
}

0 个答案:

没有答案