如何通过委托推送或弹出viewcontroller?

时间:2011-08-04 17:10:01

标签: iphone

我有带导航系统的rootcontroller。我想要做的是弹出旧堆栈并通过委托添加新堆栈。例如,(1)调用方法包含pop currentview和delegation。 (2)在rootview中,它接收委托并自动推送一个新栈。

currentviewcontroller.m

-(void)chooseSticker:(id)sender{
    [self.navigationController popViewControllerAnimated:YES];
    [self.delegate returnSetView];
}

rootviewcontroller.m

-(void) returnSetView{
    SetToolController *setController = [[SetToolController alloc]initWithNibName:@"SetToolController" bundle:nil];
    [self.navigationController pushViewController:setController animated:YES];
    [setController release];

}

它只返回根控制器但添加了新视图。在调用方法后,我可以在导航栏上找到重叠的“后退”按钮。

1 个答案:

答案 0 :(得分:2)

动画阻止您创建视图。因此,您可以关闭动画,也可以在显示其他视图之前添加延迟。

performSelectorOnMainThread:withObject: afterDelay: waitUntilDone:YES