0

imageViews を互いに重ね合わせるのではなく、横に並べるにはどうすればよいですか?

    public void deckButtonOnClick(View v) {
    ImageView imageView = new ImageView(getApplicationContext());
    imageView.setImageResource(DECK.takeCard());
    imageView.setAdjustViewBounds(true);
    imageView.setLayoutParams(PARAMS);
    imageView.setTag("0");
    imageView.setOnClickListener(new MyOnClickListener());

    ((RelativeLayout) findViewById(R.id.innerRelativeLayout)).addView(imageView);

}

ありがとうございました!

4

2 に答える 2

0

xml では、android:layout_toRightOf=id を使用します。

コードでは、RelativeLayout.LayoutParams で imageView.setLayoutParams() を使用し、params.addRule(RelativeLayout.RIGHT_OF, id); を使用します。

于 2013-02-11T19:27:45.283 に答える
0

オプション 1:カードのコンテナーを RelativeLayout ではなく LinearLayout として、orient="horizo​​ntal" を使用して作り直します。

オプション 2: RelativeLayout を使用して、作成した各 imageView に ID を指定する必要があります (作成されるたびにカウンターをインクリメントし、ID に追加することもできます)。次に、PARAMS 変数を作成するときに、前の ImageView の右側に配置するルールを追加できます。

PARAMS = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
PARAMS.addRule(RelativeLayout.RIGHT_OF, R.id.imageView1);
imageView.setLayoutParams(PARAMS);
于 2013-02-11T19:28:59.600 に答える