0

我继承了这个用 Flash 制作的 Android 应用程序。

代码应该可以正常工作,但我无法让它运行。

尝试设置名为 pageTitle 的属性时,它会因术语未定义错误而崩溃:

foo.pageTitle.text = "Hello!"

所以当我查找 foo 时,它来自 flash 电影,它是一个 MovieClip。

MovieClip 没有 pageTitle 属性,我认为这就是它崩溃的原因。

我可以看到文字“你好!” 当我运行编译的应用程序时覆盖在那个 MovieClip 上,所以如果我只能编译它,它就会以某种方式工作。

是否应该在某处扩展或包装 MovieClip 但我没有它?我可以有一些 SDK 的不同版本吗?我不知道。我有很多不同平台上各种语言的编码经验,但很少有 Flash 经验。

4

1 回答 1

1

MovieClip 是一个动态类,这意味着可以在运行时添加属性。我假设您收到 null 引用错误,因为 pageTitle 引用的对象未设置或初始化。

你可以做一个简单的检查,看看它是否引用了一个有效的对象:

if (foo.pageTitle) {
  foo.pageTitle.text = "Hello!"
}

如果未引用,则可能是影片剪辑存在问题;pageTitle 可能根本不存在,或者电影剪辑可能没有完全初始化

于 2013-09-12T10:35:51.863 回答