我在矩形(Sprite)中有一个文本字段。文本适合矩形内部,但文本字段的实际大小大于精灵的大小。 (字体中隐形的上边距)
问题是当我将一个eventlistener添加到检测鼠标点击的Sprite时,即使我在矩形外面点击它也会触发。我怎样才能解决这个问题? (以便子对象大小不超过父级大小)
答案 0 :(得分:0)
如果矩形不是Sprite或MovieClip iteself,请将其转换为1,以便在容器Sprite中有矩形和上面的文本字段。为矩形指定实例名称“base”。首先,像Hwang所说,将容器的mouseChildren属性设置为false。之后设置容器的hitArea属性等于矩形。它看起来像这样:
container.mouseChildren = false;
container.hitArea = container.base;
答案 1 :(得分:0)
随机猜测,也许应用一个掩码到精灵会解决这个问题。
var mask:Shape = new Shape();
mask.graphics.beginFill(0);
mask.graphics.drawRect(0,0,recWidth,recHeight);
sprite.addChild(mask);
sprite.mask = mask;
答案 2 :(得分:-1)
sprite.mouseChildren=false
也许您也需要使用textfield.selectable=false
。
textField太高而且widde? 改为
textfield.width=textfield.texhWidth, textfield.height=textfield.textHeight