我的舞台上有一个按钮组件。
当我去编译时,我收到以下错误。
1000(Ambiguous reference to Button)
似乎无法找到这里的错误。
答案 0 :(得分:3)
您的库或类路径中可能有多个名为Button
的类。编译器不知道您要使用哪个,因此错误。有时,提供完整的软件包名称会有所帮助:
var button:com.whatever.buttons.Button = button1;
但很难说你是否提供了更多的代码。
答案 1 :(得分:0)
仅为后代,还要考虑是否要混合访问修饰符。例如,在getter和setter方法上:
public set myVar(a:String):void {
_a = a;
}
private get myVar():String {
return _a;
}
public function test():void {
trace(a); // throws error, though it may not seem obvious why
}
答案 2 :(得分:0)
我刚刚遇到过这个问题。我尝试声明包和变量类型,但它没有帮助。最后出现问题的是我在设计模式下添加了一个mx按钮,但在脚本中我声明了一个spark.components.button。一旦我从设计模式切换按钮类型,它就解决了问题。
for each (var player:XML in rosterFile.player){
...
var plusB:Button = new Button();
plusB.id = "plus" + count.toString();
plusB.x = 286;
if(count == 0){
plusB.y = 37;
}else{
plusB.y = (37 + (count * 64));
}
plusB.label = "+";
arena.addElement(plusB);
count++;
}