【问题标题】:Button color change on hover悬停时按钮颜色变化
【发布时间】:2012-05-10 21:31:51
【问题描述】:

我只是 Android 的初学者。我希望按钮在鼠标悬停时更改其颜色。
我不知道如何在android中做到这一点。可以做到吗?

查看按钮:

<Button 
  android:id="@+id/b8"
  android:text="click me"
  style="?android:attr/buttonStyleSmall"
  android:textSize="20dp" />

【问题讨论】:

标签: android button colors


【解决方案1】:

您需要使用所谓的selector

您可以阅读它们并从this site.获得教程

请记住,Android 中确实没有“悬停”的概念,因为您不能将手指悬停在显示屏上。但是您可以创建选择器,例如,当按钮具有焦点时。通常一个按钮可以有三种状态:正常、聚焦和按下。

【讨论】:

  • 不,您不能将手指悬停在显示屏上,但可以将触控笔或鼠标指针悬停在视图上。
  • 确实有一个“悬停”状态,还有一堆其他的,不仅仅是你列出的那些。考虑到应用不仅可以在普通手机上运行,​​还可以在各种设备上运行,例如电视
  • 其实有一个 state_hovered: developer.android.com/guide/topics/resources/… 是从 2011 年开始的
【解决方案2】:

我们所知道的特定鼠标悬停功能在 Android OS 4.0 及更高版本上受支持。 视图有 onHoverListeners()。最后是不是很棒

【讨论】:

    【解决方案3】:

    这里是xml-- hover.xml--

    <item android:drawable="@drawable/image__hover" android:state_focused="false" android:state_pressed="true"/>
    <item android:drawable="@drawable/normalimage"/>
    

    以及我如何在 Button 中使用它来改变悬停时的颜色

    <Button
                            android:layout_width="match_parent"
                            android:layout_height="match_parent"
                            android:background="@drawable/hover"
                            ></Button>
    

    【讨论】:

      【解决方案4】:

      在 Android 上可以进行悬停:所有具有轨迹球、方向键或 QWERTY 键盘箭头键的设备都可以将“悬停”或焦点移动到任何可按下(可点击)的位置。然后,例如在我的 G1 上,您按下轨迹球将其按下为android:state_pressed 状态。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-07-20
        • 2018-09-28
        • 2020-09-01
        • 1970-01-01
        • 2012-06-29
        • 2013-05-05
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多