haxe - 我可以将 StablexUI 与 HaxeFlixel 一起使用吗?

标签 haxe haxeflixel stablexui

我是 Haxe/HaxeFlixel 的新手,我想使用 UI 工具来制作我的游戏。

经过一番研究,我发现 3 个工具似乎很适合为 Haxe 制作 UI。

  • HaxeUI
  • StablexUI
  • flixel-ui

flixel-ui 严重缺乏文档,所以我倾向于 StablexUI。但是,它未与 HaxeFlixel 集成。

我测试将其加载到 FlxState 中,但存在一些问题。

  • 首先,光标位于 UI 后面
  • 其次,UI 无法捕获键盘输入
  • 三、文字不可见

这是我的代码:

override public function create():Void
{
    FlxG.cameras.bgColor = 0xff131c1b;
    FlxG.mouse.useSystemCursor = true;
    UIBuilder.init();
    Lib.current.addChild( UIBuilder.buildFn('ui/main.xml')() );
    super.create();
}

和 XML:

<?xml version="1.0" encoding="UTF-8"?>

<HBox padding="10" childPadding="5">
<InputText id="'input'" skin:Paint-border="1" skin:Paint-color="0xFFFFFF" w="150" h="20" text="'type any message here'"/>

<!-- Here we create on-click handler wich shows our alert box with input message -->
<Button h="20" text="'Show me the alert!'" skin:Paint-color="0xbbbbbb" skin:Paint-border="1"/>

是否可以将 StablexUI 与 HaxeFlixel 一起使用,如果可以,如何使用?

最佳答案

首先,Flixel 用自己的方式颠覆了基本的 OpenFL 显示列表,因此您必须将整个 StablexUI 对象分层到整个 Flixel Canvas 上。

这有一些值得注意的缺点 - 主要是你的整个 UI 总是必须覆盖整个 flixel Canvas ,并且不会关心或响应 flixel 状态更改等事情。它也不能与 flixel 混合像 FlxSprites 这样的 Assets 。使用光标,您可以通过关闭 HaxeFlixel 光标并仅使用常规系统光标来获得良好的结果。

至于 flixel-ui 的文档具体缺少什么?您在这里找不到您需要的东西吗?

https://github.com/haxeflixel/flixel-ui

另一种可能性是 HaxeUI——HaxeUI 具有可定制的后端,因此它可以使用 native flixel 小部件来实现。这是一项繁重的工作,但您可以让维护者 Ian Harrigan 知道这对您很有值(value),并且他可能会在将来添加它。

关于haxe - 我可以将 StablexUI 与 HaxeFlixel 一起使用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33791569/

相关文章:

sockets - Haxe:连接到远程主机

haxe - 用逆变参数覆盖父方法

haxe - 为什么无法访问加载的 swf 文件?

macros - 获取 Haxe 宏中对象的类型

haxe - 如何移动 HaxeFlixel FlxNapeSprite?

haxe - Haxe 和其他变量类型相关问题中的箭头运算符用法

html - 如何将 HaxeFlixel 与 openfl-bit Five 一起使用