2013-02-11 66 views
0

我怎样才能让imageViews在海誓山盟旁边而不是在海誓山盟之上?RelativeLayout而不是顶部

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

} 

谢谢!

回答

0

选项1:使用orientation =“horizo​​ntal”作为LinearLayout而不是RelativeLayout对卡片的容器进行返工。

选项2:使用RelativeLayout,您需要为每个imageView创建一个ID(也许每次创建一个计数器并将其附加到ID)。然后,当您创建PARAMS变量时,您可以将add a rule对齐到前一ImageView的右侧。

PARAMS = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); 
PARAMS.addRule(RelativeLayout.RIGHT_OF, R.id.imageView1); 
imageView.setLayoutParams(PARAMS); 
+0

谢谢。从你的选择1看来,这是可取的,我会试试这个并且回复你 – Eyeball 2013-02-11 19:34:08

+0

好的,那很明显。我以前就喜欢这样,但现在我的动画变得混乱了。我会给这个更多的想法 – Eyeball 2013-02-11 19:36:06

+0

听起来像你通过了一个障碍 - 与动画祝你好运! – 2013-02-11 19:38:32

0

在xml中,使用android:layout_toRightOf = id。在代码中,使用imageView.setLayoutParams()和RelativeLayout.LayoutParams并使用params.addRule(RelativeLayout.RIGHT_OF,id);

相关问题