首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >MoSync本机UI和部署

MoSync本机UI和部署
EN

Stack Overflow用户
提问于 2011-02-04 21:41:36
回答 2查看 1.9K关注 0票数 0

有没有人知道是否可以使用MoSync来创建具有原生UI的应用程序?

据我所知,所有的UI /图形都是用它们自己的ui库完成的,而不是原生ui元素。

另外,现在我正在创建一个问题。为什么MoSync的目标是特定的电话?有没有可能只为你的目标平台创建一个通用的安装包?(就像安卓的.apk文件)。如果可能的话,它应该会使分发变得更容易。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-02-08 02:52:06

目前为止的标准方法是通过MAUI库创建一个自定义的非本机UI。截止到2011年02月03日,安卓和iPhone都有一个实验性的原生UI框架。然而,用户文档并不存在,因此您必须查看源代码以获取更多信息。我将为您指明正确的方向,为了访问本机小部件,您可以使用maapi.idl中定义的maWidget*系统调用。有关可用小部件和属性的列表,请参阅:Types.java。请注意,此API可能会更改和扩展。

一个简单的原生UI示例:

代码语言:javascript
复制
#include <MAUtil/Moblet.h>

#include <IX_WIDGET.h>

class NativeUIMoblet : public MAUtil::Moblet
{
public:
    NativeUIMoblet()
    {
        // Create a screen
        MAHandle mainScreen = maWidgetCreate( "Screen" );

        // Create a 'Hello World' label
        MAHandle helloLabel = maWidgetCreate( "Label" );
        maWidgetSetProperty( helloLabel, "text", "Hello World!" );

        // Add the label to the screen
        maWidgetAddChild( mainScreen, helloLabel );

        // Show the screen
        maWidgetScreenShow( mainScreen );
    }

    void keyPressEvent(int keyCode, int nativeCode)
    {

    }

    void keyReleaseEvent(int keyCode, int nativeCode)
    {

    }
};

extern "C" int MAMain()
{
    MAUtil::Moblet::run( new NativeUIMoblet( ) );
    return 0;
};

目前,没有可用的仿真器支持,因此必须在设备上或在特定的SDK仿真器中运行它。

针对特定手机的原因是存在特定于特定设备的bug。但在最近的MoSync夜间构建中,你可以为像Android2.1这样的通用平台构建。

票数 1
EN

Stack Overflow用户

发布于 2011-03-15 07:22:40

http://www.mosync.com/blog/2011/03/using-nativeeditbox

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4898595

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档