解雇模式视图控制器时,冻结该工程对iPhone BTW(无论运行iOS 5.1)应用程序在iPad上
我的应用程序冻结当我打电话[self dismissModalViewControllerAnimated:NO];
我已经尝试了许多不同的方法:
我的代码,我怎么会有现在:
-(void) doneEditing:(NSString *)value
{
[multiLineText dismissModalViewControllerAnimated:NO];
self.currentActiveTextView.text = value;
self.currentActiveTextView = nil;
}
- (void)textViewDidBeginEditing:(UITextView *)textView
{
multiLineText = [[MultilineTextViewController alloc] init];
multiLineText.delegate = self;
multiLineText.text = textView.text;
self.currentActiveTextView = textView;
[self presentModalViewController:multiLineText animated:NO];
}
MultilineTextViewController.h
@protocol DoneEditing
-(void)doneEditing:(NSString*)value;
@end
@interface MultilineTextViewController : UIViewController
{
UITextView *inputText;
id<DoneEditing> delegate;
}
@property (nonatomic, strong) NSString *text;
@property (nonatomic, strong) id<DoneEditing> delegate;
@end
函数从完成按钮叫
-(void) done:(id)sender
{
[delegate doneEditing:inputText.text];
}
我试图在我做功能驳回模式 我在MultilineTextViewController
if ([[self parentViewController] respondsToSelector:@selector(dismissModalViewControllerAnimated:)]){
[[self parentViewController] dismissModalViewControllerAnimated:NO];
} else {
[[self presentingViewController] dismissViewControllerAnimated:NO completion:nil];
}
试图在自 这两个地方我也试过这种
只是有些历史记录,当用户点击一个UITextView
我用它来打开一个新的ModalViewController
来允许用户有更多的空间键入大量的文本,在完成之后,用户按下完成,然后我调用委托方法将文本放在原始表单上。
如果我改变动画为是在任何上面给出的情况下,它仍然不工作,但不是冻结我得到的NSInternalInconsistencyException
Attempting to begin a modal transition from <WorkflowViewController: 0xc6846b0> to <MultilineTextViewController: 0xc64b960> while a transition is already in progress. Wait for viewDidAppear/viewDidDisappear to know the current transition has completed
任何想法?
我似乎无法找到这个东西不工作的理由...
在我的代码的哪一部分? – Armand 2012-03-30 07:21:53
_I曾尝试解散模式在我完成function_ - 我想在你的功能:) – beryllium 2012-03-30 07:23:10
哈哈刚刚尝试过那里,但然后该应用程序只是冻结,什么也不做,并没有任何响应 – Armand 2012-03-30 07:24:03