我有3个普通视图,每个视图都由一个视图控制器控制,
view1---->View1controller (rootviewcontroller)
view2---->View2controller
view3---->View3controller
然后我有一个特殊模块
View4--->View4controller
rootviewcontroller中存在后台线程。 我可以在view1,view2或view3中任意一个。当出现某种情况时,后台线程将通过
启动View4 [presentviewcontroller:View4controller]
如果我在view2,View3中,我希望View4升到顶部并且无关紧要。但问题是要呈现的代码是在View1controller中。因此,如果我在view2中并且满足特殊条件,则会从View1controller的后台线程弹出UIAlertView,向用户说明出现的特殊情况。
那么当我在View2中时,如何从View1controller将View4呈现给TOP?
答案 0 :(得分:0)
我相信你不能这样做。您必须将view4传递给View2并让它呈现它,可能使用以下内容:
@property UIViewController *currentView;
@synthesize currentView;
//and when trying to push view4 do the following
if (currentView!=nil) {
[currentView presentViewContoller:View4Cont];
}
或使用view1同时关闭View2并显示View4(使用动画属性= NO)。
还要确保从主线程执行所有特定于接口的操作。