我使用 OpenFL + stablexui 为 Haxe 开发 Flash 应用程序到 FlashDevelop。一旦我开始使用<meta: include>
index.xml 接口标记文件中的标签,然后在使用文本连接到项目 xml 文件时立即开始出现错误:
小部件类未注册:meta:include
Haxe 版本 3.2.1
项目中使用的库版本:
<haxelib name="openfl" version="4.5.2"/>
<haxelib name="buddy" version="2.6.0"/>
<haxelib name="mockatoo" version="3.2.1"/>
<haxelib name="hscript" version="2.0.7"/>
<haxelib name="actuate" version="1.8.7"/>
<haxelib name="stablexui" version="1.2.0"/>
<haxelib name="promhx" version="1.1.0"/>
<haxelib name="svg" version="1.1.1"/>
主类初始化部分代码:
import flash.Lib;
import flash.events.MouseEvent;
import flash.events.Event;
import flash.system.Capabilities;
import flash.text.Font;
import openfl.Lib;
import openfl.display.*;
import openfl.system.System;
import openfl.events.MouseEvent;
import ru.stablex.ui.*;
import ru.stablex.ui.RTXml;
import ru.stablex.ui.UIBuilder;
import ru.stablex.ui.skins.*;
import ru.stablex.ui.widgets.*;
import ru.stablex.ui.events.WidgetEvent;
class AppMain extends Sprite {
public function new() {
super();
LocalState.sharedObjectName = "state.startproject";
//----------------
//-- Init App
//----------------
UIBuilder.regClass('AppMain');
UIBuilder.init("ui/skins/defaults.xml");
UIBuilder.regSkins("ui/skins/skins.xml");
UIBuilder.buildFn("ui/index.xml")();
}
}
部分 XML 代码 index.xml
<?xml version="1.0" encoding="utf-8" ?>
<ViewStack id="'screens'" widthPt="100" trans:Slide-direction="'left'" trans:Slide-duration="0.2">
<meta:include src="ui/start.xml" />
<meta:include src="ui/content.xml" />
</ViewStack>