如何从didFinishPickingMediaWithInfo推送模态视图

时间:2010-03-18 12:09:47

标签: iphone objective-c pushviewcontroller

我有一个imagePickerController,允许用户拍摄或选择图像。 In - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info;我想触发打开另一个模态视图来捕获标题。我打电话给那个目的......

-(void) getcaption:(id) obj {
    textInput * ti = [[textInput alloc] initWithContent:@"" header:@"Caption for photo" source:2];
    ti.delegate = self;
    [self presentModalViewController:ti animated:YES];
    [ti release];
}

问题是如何在不触发螺旋式

的情况下调用getcaption
#6663 0x324abb18 in -[UIView(Hierarchy) _makeSubtreePerformSelector:withObject:withObject:copySublayers:] ()

目前我

[self performSelector:@selector(getcaption:)  withObject:nil afterDelay:(NSTimeInterval)1];

在didFinishPickingMediaWithInfo中 这是令人讨厌的,只有95%可靠

1 个答案:

答案 0 :(得分:3)

我认为问题是您在旧视图关闭之前尝试显示新视图?我假设你在父视图控制器中,它显示两个模态视图,它是父视图。如果是这种情况,则应显示新模态视图的点是父视图完全隐藏上一个模态视图的时间。具体来说,这发生在

- (void) viewDidAppear:(BOOL)animated

您需要确保在上一个模式视图完成之后才显示第二个模态视图(当然,出于任何其他原因出现父视图时不显示它)