Android 图层列表徽章

Android Layer-list Badge

我关注了这篇文章:http://javarticles.com/2015/09/android-icon-badge-example-using-layer-list-drawable.html。我的代码几乎完全相同,只是在定位上稍作调整 part.Regardless 我尝试它从不绘制在第一层可绘制高度之上。

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

我希望圆完全绘制,而不是被第一张图片的高度切割。

我使用了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);

提示:我将两张图片的大小相等但方向相反