haxe - 从 Haxe 中静态字段的静态初始化访问非静态数据

标签 haxe openfl

我试图用 Float 值初始化 Haxe 中的静态类字段,但编译器提示初始化程序无效。

我没有太多使用 Haxe 的经验,所以如果有人可以帮助我,我将非常感激。

这是代码:

Enemy.hx

这是错误:

cmd

最佳答案

“无效字段访问”基本上是一个空引用错误,这意味着在静态字段初始化时Lib.current.stagenull。作为解决方法,您可以使用带有 getter 的属性,以便稍后访问它:

public static var radius(get, never):Float;

private static function get_radius():Float
{
    return Lib.current.stage.stageWidth / 35;
}

关于haxe - 从 Haxe 中静态字段的静态初始化访问非静态数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32026800/

相关文章:

macros - Haxe宏: quote field properly

haxe - 使用 Type.getClassFields() 的结果

actionscript-3 - 将 fla 文件从移植的 flash 项目添加到 haxe (openfl)

haxe - OpenFL 中从 PS3 Controller 输入?

java - 在哪里放置 OpenFL android 扩展的可绘制资源?

javascript - Haxe -> CommonJs (NodeJs) 样式输出的 Javascript 目标

mysql - 为什么 Haxe 在 for 循环之外而不是内部打印 MySQL 日期戳?

haxe - 如何退出 Haxe/OpenFL 程序?

haxe - OpenFL 影片剪辑上不允许进行数组访问