2014-09-04 70 views
0

我正在按照这里给出的答案Array of images stacked next to each other, using LayerDrawable.(Displaying multiple image in single imageview) 。我的图像是38x38大小。多图像单视图错位Android

这是我的代码:

Drawable[] layers = new Drawable[2]; 
layers[0]=cActivity.getResources().getDrawable(R.drawable.white_pawn); 
layers[1]=cActivity.getResources().getDrawable(R.drawable.black_pawn); 

LayerDrawable pawns = new LayerDrawable(layers); 
pawns.setLayerInset(0, 0, 0, 42, 0); 
pawns.setLayerInset(1, 42, 0, 42, 0); 
((ImageView)v.findViewById(R.id.baseImage)).setImageDrawable(pawns); 

但是,这是发生了什么:layers misplaced

任何帮助吗?

回答

0

与您提到的问题的唯一区别是您没有设置drawable的重力。 IIRC Drawable默认尝试填充图层。

layers[0].setGravity(Gravity.LEFT); 
    layers[1].setGravity(Gravity.LEFT); 
+0

好吧,你是对的,只是尝试过,它的工作,ty!事情就是setGravity方法不适用于Drawables,这就是为什么我被迫使用BitMap Drawable的原因,我想避免这种情况,因为它似乎没有它。但你是对的,非常先生! – Ssr1368 2014-09-05 23:12:02