【问题标题】:Alternative to UIApplicationMain for cross platform application.替代 UIApplicationMain 用于跨平台应用程序。
【发布时间】:2013-02-13 12:28:38
【问题描述】:

我正在创建一个用于为多个平台创建窗口的类,包括Windows, Mac, Linux, iOS and Android。我希望我的班级按以下方式工作

    MyWindow window( "My Window", 480, 320 );
    while( window.IsRunning() )
    {
        // do something
    }

但是,在 iOS 上,我们需要在调用 main 之后调用 UIApplicationMain,这会处理所有内部内容和主循环。我想知道是否有任何方法可以绕过 UIApplicationMain 以便我可以控制 iOS 上的主循环?一个有效的代码示例会很有帮助。

谢谢。

【问题讨论】:

  • 你不能,真的。它需要被调用。如果你需要这个,你可能有一个设计问题。

标签: android ios macos window cross-platform


【解决方案1】:

正如@H2CO3 所说,你不能。

有很多限制,例如:iOS 移动应用程序只能有一个窗口,但 Mac OS 可以有多个窗口,你将如何处理?

另请参阅this 和 App Life Cycle 和 Apple Docs

但您可以遵循一些节省时间的技巧。

你可以分部分设计你的代码

  1. 处理数据的代码

  2. 处理 UI 更新的代码

    根据原生应用 SDK 设计您的 UI,然后根据回调更新 UI。

    您可以使用不同的工具来转换您的代码 比如Google's Java To Obj C和ObjC to java

只有部分代码可以重用,但大部分代码您已经针对不同平台进行了重写。

你也可以尝试使用一些cross platforms。

【讨论】:

    猜你喜欢
    • 2011-05-27
    • 1970-01-01
    • 2014-03-09
    • 2023-03-16
    • 1970-01-01
    • 2012-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多