AS 3.0参考问题

发布于 2024-08-28 12:50:41 字数 827 浏览 5 评论 0原文

我发现很难弄清楚 AS 3.0 中的参考系统。

这是我的代码(我已将其修剪以找到问题,但无济于事),

package rpflash.ui {

import flash.display.Sprite;
import flash.display.MovieClip;
import flash.display.Stage;
import nowplaying;
import flash.text.TextField;

public class RPUserInterface extends Sprite{

    var np:nowplaying;

    public function RPUserInterface(){
        }

    public function init(){
        var np:nowplaying = new nowplaying();
        this.addChild(np)
        }

    public function updateplayer(xml:XML){
        var artist: String = xml.nowplaying.artist.toString();
        var title: String = xml.nowplaying.title.toString();
        trace("UI:update");
        trace(this.np);// this gives me a null reference
        }
}   
} 

但我仍然无法访问 np!跟踪 this.np 给我一个空引用。我什至不想从子类中访问它。 (顺便说一句,我也想知道如何做到这一点。)

I am finding it hard to fugure out the reference system in AS 3.0.

this is the code i have (i have trimmed it down in order to find the problem but to no avail)

package rpflash.ui {

import flash.display.Sprite;
import flash.display.MovieClip;
import flash.display.Stage;
import nowplaying;
import flash.text.TextField;

public class RPUserInterface extends Sprite{

    var np:nowplaying;

    public function RPUserInterface(){
        }

    public function init(){
        var np:nowplaying = new nowplaying();
        this.addChild(np)
        }

    public function updateplayer(xml:XML){
        var artist: String = xml.nowplaying.artist.toString();
        var title: String = xml.nowplaying.title.toString();
        trace("UI:update");
        trace(this.np);// this gives me a null reference
        }
}   
} 

and still i cannot access np!!! trace this.np gives me a null reference. i am not even trying to access it from a subling class. (btw i def want to know how to do that as well.)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

∞梦里开花 2024-09-04 12:50:41

init() 函数中,您正在实例化一个名为 np 的局部变量。请尝试以下操作:

public function init() {
    // var np:nowplaying = new nowplaying();
    np = new nowplaying();
    this.addChild(np);
}

另外,请确保在 updateplayer() 之前调用 init()。希望有帮助。

In your init() function, you are instantiating a local variable called np. Try this instead:

public function init() {
    // var np:nowplaying = new nowplaying();
    np = new nowplaying();
    this.addChild(np);
}

Also, make sure init() is getting called before updateplayer(). Hope that helps.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文