有誰知道是否可以使用MoSync創建具有本機用戶界面的應用程序?
從我可以告訴所有的用戶界面/圖形是用自己的用戶界面庫,而不是本地用戶界面元素。MoSync本地用戶界面和部署
另外,現在我仍然在創建一個問題。爲什麼MoSync會針對特定的電話?是不是可以爲你定位的平臺創建一個通用的安裝包? (如android的.apk文件)。如果可能的話,它應該使分發更容易。
有誰知道是否可以使用MoSync創建具有本機用戶界面的應用程序?
從我可以告訴所有的用戶界面/圖形是用自己的用戶界面庫,而不是本地用戶界面元素。MoSync本地用戶界面和部署
另外,現在我仍然在創建一個問題。爲什麼MoSync會針對特定的電話?是不是可以爲你定位的平臺創建一個通用的安裝包? (如android的.apk文件)。如果可能的話,它應該使分發更容易。
現在直到現在的標準方式是通過MAUI庫創建一個自定義的非本機用戶界面。截至2011年2月3日,Android和iPhone都有一個實驗性原生UI框架。然而,用戶文檔並不存在,因此您需要檢查源代碼以獲取更多信息。我會指出您正確的方向,用於訪問使用在maapi.idl中定義的maWidget *系統調用的本機小部件。有關可用小部件和屬性的列表,請參閱:Types.java。請注意,此API可能會更改並擴展。
一個簡單的本地UI例如:
#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模擬器中運行它。
定位特定手機的原因是存在特定於某個設備的錯誤。但是在最近的MoSync每晚構建中,您可以爲Android 2.1等通用平臺構建。
[請提供鏈接的上下文](http://stackoverflow.com/questions/how-to-answer)。雖然這可能在理論上回答這個問題,[這將是優選的](http://meta.stackexchange.com/q/8259)以包括回答的主要部分在這裏,並提供鏈路參考。 – Gilles 2011-11-12 23:06:09
我會認爲能夠使通用apk文件是一個更重要的功能。將使應用程序嚮應用程序商店提交應用程序變得更容易。 請注意,我還沒有實際使用MoSync(正在研究不同的框架),所以也許我沒有抱怨。 無論如何,謝謝你回答:) – Rutger 2011-02-08 08:26:11