外部发光的Android按钮

时间:2014-06-11 09:53:07

标签: android button glow

我知道这个话题已经讨论过了,但我并没有找到我真正想做的事情。

我有那些按钮(屏幕截图在底部)。现在我想添加一个外部发光。除了在drawable文件夹中将其保存为.png之外,是否还有其他可能性?这样可以减少工作量。

问候 尼尔斯

the buttons now:

Like I want it

1 个答案:

答案 0 :(得分:4)

试试这段代码

public Bitmap setGlow(int resourceId) {
    Bitmap bmp = null;
    try {
        int margin = 30;
        int halfMargin = margin / 2;

        int glowRadius = 15;

        int glowColor = Color.rgb(0, 192, 200);

        Bitmap src = BitmapFactory.decodeResource(getResources(),
                resourceId);

        Bitmap alpha = src.extractAlpha();

        bmp = Bitmap.createBitmap(src.getWidth() + margin, src.getHeight()
                + margin, Bitmap.Config.ARGB_8888);

        Canvas canvas = new Canvas(bmp);

        Paint paint = new Paint();
        paint.setColor(glowColor);

        paint.setMaskFilter(new BlurMaskFilter(glowRadius, Blur.OUTER));
        canvas.drawBitmap(alpha, halfMargin, halfMargin, paint);

        canvas.drawBitmap(src, halfMargin, halfMargin, null);

    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    return bmp;
}

并在视图上设置返回的位图

像你这样在你的图像按钮中设置

btnClick.setImageBitmap(setGlow(R.drawable.ic_launcher));