首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从全局上消除星火部件的悬停/ rollOver效应?

如何从全局上消除星火部件的悬停/ rollOver效应?
EN

Stack Overflow用户
提问于 2010-10-28 01:48:21
回答 2查看 1.4K关注 0票数 0

我的目标是从UI中删除所有悬停反馈。这样做的动机是测试触摸界面原型,而不希望用户在鼠标悬停时拥有交互队列,而这是他们在触摸界面上所没有的。

我有一个部分的解决方案,但它有两个问题:

在悬停时,每个component.

  • Flickers上都需要一个
  1. 事件处理程序。

受保护函数ui_suppressHover(事件:MouseEvent):void{ var b= event.currentTarget as UIComponent;b.skin.currentState = "up";}

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-10-28 22:21:58

这里有一个由Maxim的回答引起的部分解。您可以通过扩展Button并按如下方式重写HoverlessButton类:

代码语言:javascript
复制
override protected function getCurrentSkinState():String
{               
    var state:String = super.getCurrentSkinState();
    if (state == "over")
        state = "up";
    return state;
}

您必须首先调用超级impl,因为只有它才能正确检查isDown(),这是私有的。

票数 1
EN

Stack Overflow用户

发布于 2010-10-28 06:35:56

最好重写getCurrentSkinState,例如参见spark Button.as

代码语言:javascript
复制
override protected function getCurrentSkinState():String
{
    if (!enabled)
        return "disabled";

    if (isDown())
        return "down";

    if (hovered || mouseCaptured)
        return "over";

    return "up";
}

因此,只需删除hovered || mouseCaptured "if“。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4039103

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档