当用户点击iPhone应用程序页面中的图像时,我想首先显示自定义弹出窗口(这是用户消息说“正在处理您的请求” ),“开始”图像触摸处理之前。但是,不知何故,处理开始(甚至没有显示弹出窗口,尽管我已经编写了代码来在处理代码之前显示弹出窗口),但几乎只会结束&,只有弹出窗口才会显示。你能帮忙吗?CocoaTouch - iPhone应用程序 - 执行前继续显示对话框
这是代码片段:
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
int emotionChosen = -1;
[self showUserNote:msg];
...
...
// This then calls a method to process the touch event
...
...
}
-(void) showUserNote:(NSString *)note {
if ((self.viewCtrlrUserNote == nil) || (self.viewCtrlrUserNote == NULL)) {
self.viewCtrlrUserNote = (ViewController_NoteToUser *) [((com_AppDelegate *) [[UIApplication sharedApplication] delegate]).storyboard instantiateViewControllerWithIdentifier:kNameViewCtrlrUserNote];
}
[self.viewCtrlrUserNote.view setFrame:CGRectMake(70.0,150.0,170.0,170.0)];
[self.viewCtrlrUserNote initializeViewWithNote:note];
[self.view addSubview:self.viewCtrlrUserNote.view];
[self.view bringSubviewToFront:self.viewCtrlrUserNote.view];
}
虽然想提出调用showUserNote(其应显示弹出/对话框)“第一”,“然后仅”正在呼叫,其处理方法触摸。但处理触摸的方法首先开始执行&对话框仅在处理方法结束时出现,因此它破坏了目的!
我的开发环境:4.3.3的XCode的iPad,iOS 5的
我如何“任务”认为iOS的“第一”显示“之前”开始处理触摸事件的用户对话框?
你能解释为什么特定的顺序很重要吗?典型的设计启动了后台工作,并在运行循环的相同轮回中呈现“处理它”UI状态。这两件事实际上都是在应用程序返回时开始发生的,并且大部分时间都是人们想要的。你的processTouch代码中会发生什么,以破坏用户界面的变化? – danh
处理代码需要很长时间才会出现问题,并且您希望向用户显示一条警告以等待? –