0

我有一个名为 MapNameText 的符号和一个名为“innerText”的动态文本字段。

当我单击它们都在其中的对象时,我试图让它更改文本,但它不起作用

我的动作脚本的相关部分:

var MapName:String;

this.onMouseDown = function()
{

    trace(MapNameText['innerText'].text);

    MapName= MapNameText['innerText'].text;

    switch(MapName)
    {
        case "Classic":
        this.MapNameText['innerText'].text = "Crystal";
        trace(this.MapNameText['innerText'].text);

        case "Crystal":
        MapNameText['innerText'].text = "Volcano";

        case "Volcano":
        MapNameText['innerText'].text = "Classic";
    }
}

在输出窗口中,我得到“经典”“水晶”但是我的对象中的文本没有更新,这让我很困惑,我不知道该怎么做

谁能帮我解决这个问题?

4

2 回答 2

0

谢谢回复!不幸的是,这并没有解决问题,但经过更多的修补后,我意识到我没有使用“Break”。现在,当我断开每个案例时,它就可以工作了。

对于那些有类似问题的人,这是解决的代码

switch(MapName)
{
    case "Classic":
    this.MapNameText.innerText.text = "Crystal";
    trace(this.MapNameText['innerText'].text);
    break;

    case "Crystal":
    MapNameText.innerText.text = "Volcano";
    break;

    case "Volcano":
    MapNameText.innerText.text = "Classic";
    break;
}
于 2013-06-16T10:44:42.187 回答
0
switch(MapName)
{
    case "Classic":
    this.MapNameText.innerText.text = "Crystal";
    trace(this.MapNameText['innerText'].text);

    case "Crystal":
    MapNameText.innerText.text = "Volcano";

    case "Volcano":
    MapNameText.innerText.text = "Classic";
}
于 2013-06-15T18:47:29.730 回答