如何在Android中制作发光按钮?

时间:2018-07-24 10:42:03

标签: android android-button shadow glow

每当用户单击错误的按钮时,我都会尝试使正在制作的应用程序产生脉动的阴影,我想通过使阴影在按钮周围淡入淡出来引起人们对按钮的注意。因此,我需要以编程方式进行操作。我看了很多地方都没有成功。如果有其他方法可以解决,请告诉我。 :)

编辑: 这是我正在处理的一些代码:

newTimerTask = new TimerTask() {
        @Override
        public void run() {
            ObjectAnimator colorFade = ObjectAnimator.ofObject(start_stop_btn, "background", new ArgbEvaluator(), R.drawable.button_shadow, 0xff000000);
            colorFade.setDuration(7000);
            colorFade.start();
            start_stop_btn.setBackground(ContextCompat.getDrawable(getApplicationContext(), R.drawable.button_shadow);
        }
    };
    Timer newTimer = new Timer();
    newTimer.schedule(newTimerTask, 0, 100);

button_shadow.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>
    <layer-list>
        <item android:right="5dp" android:top="5dp">
            <shape>
                <corners android:radius="3dp" />
                <solid android:color="#D6D6D6" />
            </shape>
        </item>
        <item android:bottom="2dp" android:left="2dp">
            <shape>
                <gradient android:angle="270"
                    android:endColor="#E6E600" android:startColor="#FFFF00" />
                <stroke android:width="1dp" android:color="#BABABA" />
                <corners android:radius="4dp" />
                <padding android:bottom="10dp" android:left="10dp"
                    android:right="10dp" android:top="10dp" />
            </shape>
        </item>
    </layer-list>
</item>

谢谢!

1 个答案:

答案 0 :(得分:0)

Android中没有这样的属性来显示阴影。 您可以这样解决:

在您的LinearLayout下,用灰色的FramelayoutButton,在底部margin的右边和右边等于1或2 dp

单击错误的Button时使其可见。

那是我能为您的要求提供的最好的建议。

我的建议是获得一个好的动画来吸引用户的注意力。