Android 无法重叠图像

Android 无法重叠图像,android,imageview,overlapping,Android,Imageview,Overlapping,我需要一幅一幅地重叠图像。 下面是我的代码 int cards[] = {R.drawable.c1,R.drawable.c2,R.drawable.c3,R.drawable.c4,R.drawable.c5,R.drawable.c6, R.drawable.c7,R.drawable.c8,R.drawable.c9,R.drawable.c10,R.drawable.c11,R.drawable.c12,R.drawable.c13}; ImageVi

我需要一幅一幅地重叠图像。 下面是我的代码

int cards[] = {R.drawable.c1,R.drawable.c2,R.drawable.c3,R.drawable.c4,R.drawable.c5,R.drawable.c6,
            R.drawable.c7,R.drawable.c8,R.drawable.c9,R.drawable.c10,R.drawable.c11,R.drawable.c12,R.drawable.c13};

    ImageView[] Images = new ImageView[cards.length];
        for (int i = 0; i < cards.length; i++) {           
            Images[i] = new ImageView(this);

            Images[i].setImageBitmap(BitmapFactory.decodeResource(getResources(), cards[i]));
            Images[i].setId(i);
            RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(
                    RelativeLayout.LayoutParams.WRAP_CONTENT,
                    RelativeLayout.LayoutParams.WRAP_CONTENT);
            if (i != 0) {                
                params.addRule(RelativeLayout.RIGHT_OF,Images[i - 1].getId());
              params.addRule(RelativeLayout.ALIGN_PARENT_TOP, Images[i - 1].getId());
              layout.addView(Images[i], params);
            } else {
                params.addRule(RelativeLayout.LEFT_OF,Images[0].getId());
                params.rightMargin=10;
                layout.addView(Images[i]);
            }

       }
有了这个,我无法显示第一个图像和剩余的图像显示,但不与其他图像重叠。
如何解决这个问题?

代码完全错了:你知道“右”和“左”是什么意思吗? 只要删除所有的if-else部分,你就会看到所有的te图像,一个在另一个上面。
顺便说一句,在android上有更好的方法来堆叠图像,比如LayerDrawable类。

最终可以借助此解决问题


我非常清楚这些事情,如果我删除if-else部分,我们只能看到一个图像…最好给出正确的答案,而不是错误的建议和答案…你想要实现什么?从图像上看不太清楚。你说你的图像没有重叠,但是你的代码试图把它们一个接一个地放在另一个上面的代码是的,第一个图像没有出现在屏幕上。。。。我能够并排显示图像,但我希望它们重叠,比如第二个图像在第一个上,第三个图像在第二个上,等等……重叠的意思是在另一个上面显示一个?
ImageView[] Images = new ImageView[cards.length];
        for (int i = 0; i < cards.length; i++) {           
            Images[i] = new ImageView(this);

            RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(
                    RelativeLayout.LayoutParams.WRAP_CONTENT,
                    RelativeLayout.LayoutParams.WRAP_CONTENT);
            if (i != 0) {          
                 params.addRule(RelativeLayout.ALIGN_TOP, i-1);
                 params.addRule(RelativeLayout.ALIGN_LEFT,i-1);
                 params.leftMargin= 40;
                 Images[i].setImageBitmap(BitmapFactory.decodeResource(getResources(), cards[i]));
                 Images[i].setId(i);
                layout.addView(Images[i], params);
            } else {
                 Images[i].setImageBitmap(BitmapFactory.decodeResource(getResources(), cards[i]));
                 Images[i].setId(i);
                layout.addView(Images[i], params);
            }

        }