是否可以在带编码的按钮上有闪光或闪烁运动动画? (不是gif或类似的方式)

问题描述 投票:-1回答:1

我想要一个带有闪耀或闪烁运动动画的按钮。没有那么复杂只是一个按钮上的移动闪耀线。是不是可以在Android工作室的java中使用动画?

java android animation button
1个回答
0
投票

有很多方法可以做,但我会给出我经常使用的方法......

使用水平和垂直线的渐变创建形状...

vert_line.xml

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >

    <gradient
        android:angle="0"
        android:endColor="#555994"
        android:centerColor="#ffffff"
        android:startColor="#555994"
        android:type="linear" />

    <corners
        android:radius="0dp"/>

</shape>

hor_line.xml

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >

    <gradient
        android:angle="90"
        android:endColor="#555994"
        android:centerColor="#ffffff"
        android:startColor="#555994"
        android:type="linear" />

    <corners
        android:radius="0dp"/>

</shape>

然后创建一个选择器,以便在按下按钮后改变背景,它会给你闪耀效果......

shine_line.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true"
        android:drawable="@drawable/line_vert" /> <!-- pressed -->

    <item android:drawable="@drawable/line_hor" /> <!-- default -->
</selector>

最后将其设置为您的按钮背景。

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

它会像魅力一样工作。

© www.soinside.com 2019 - 2024. All rights reserved.