2016-01-21 89 views
0

我关注此文章:http://javarticles.com/2015/09/android-icon-badge-example-using-layer-list-drawable.html。我的代码几乎与exactley一样,在定位部分稍作调整。无论我尝试它从不在第一层可绘制高度上绘制。我试图用这个ActionBarSerlock抽屉切换按钮(我知道ABS是@Deprecated)或也被称为汉堡包,但我如何设置圆以外的第一个图像的边界?总是得到这样的:Android Layer-list徽章

enter image description here

我想圆画充分,而不是由第一图像的高度被削减。

回答

0

我用LayerDrawable方法setLayerInset() .Took我一些时间玩,现在它看起来像这样:

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); 

提示:我将大小相等但方向相反的两幅图像相移