Android Layer-list徽章

时间:2016-01-21 14:27:23

标签: android actionbarsherlock

我遵循了这篇文章:http://javarticles.com/2015/09/android-icon-badge-example-using-layer-list-drawable.html。我的代码几乎完全相同,在定位部分稍微调整一下。无论我尝试什么,它都不会超过第一层可绘制高度。

我试图在ActionBarSerlock抽屉切换按钮上使用它(我知道ABS是@Deprecated)或者也被称为汉堡包,但是如何设置圆形以在第一个图像的边界之外绘制?我总是得到这样的东西:

enter image description here

我想让圆圈完全绘制而不是被第一张图像的高度切割。

1 个答案:

答案 0 :(得分:0)

我使用了LayerDrawable方法setLayerInset()。请给我一些时间来玩,现在它看起来像这样:

mLayerDrawable.setLayerInset(0, 0, vSeperator, hSeperator, 0);
mLayerDrawable.setLayerInset(1, 0, 0, 0, vSeperator);

vSeprator/hSeparator是密度无关的计算值:

float density = getResources().getDisplayMetrics().density;
            int vSeperator = (int) (10 * density + 0.5f);
            int hSeperator = (int) (10 * density + 0.5f);

提示:我正在将两张图片移动到相同的尺寸但方向相反