如何从扩展的iOS模块显示viewController

时间:2012-02-07 12:04:13

标签: ios titanium appcelerator

我在Titanium中创建了一个在iOS中扩展的模块。在那个模块中,我创建了一个viewController,当我调用该模块时,我希望在屏幕上显示它。 无法弄清楚..什么是正确的方法。

1 个答案:

答案 0 :(得分:1)

在主要的TiModule中,你必须使用[TiApp app]作为UIViewController。但只是使用它会给你线程问题的错误,因此,我们需要创建另一种方法来使用[TiApp app]。 E.G。

在模块的启动方法中写:

  

ENSURE_UI_THREAD(OnMainUI,nil);

这确保了作为参数传递的方法在主线程上运行,因为它具有一些与UI相关的操作。如果没有此语句,您将在后台线程中收到UI呈现错误。

然后实现以下方法,

- (id) OnMainUI {
   UIViewController *controller = [INITIALIZATION OF CONTROLLER];
   [[TiApp app] showModalController: controller animated: YES];
}

因此,这将打开您创建的控制器。