问题描述
- 在 RelativeLayout 里一个按钮为什么不能和另一个按钮对齐?
-
在 RelativeLayout 里有两个钢琴键,我使用java代码把这两个按钮在 RelativeLayout 中一个挨一个对齐。
代码如下:wk[0] = new Button(this); wk[1] = new Button(this); wk[0].setId(0); wk[1].setId(1); wkParams[0] = new RelativeLayout.LayoutParams(wkw,wkh); wkParams[1] = new RelativeLayout.LayoutParams(wkw,wkh); wkParams[0].addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); wkParams[1].addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); wkParams[1].addRule(RIGHT_OF,wk[0].getId()); relativeLayout.addView(wk[0],wkParams[0]); relativeLayout.addView(wk[1],wkParams[1]);
但是现在获得的是wk[0] 上面的wk[1] ,我不能看见 wk[0]。
解决方案
改成这样试试看:
wk[0] = new Button(this);
wk[1] = new Button(this);
wk[0].setId(0);
wk[1].setId(1);
wkParams[0] = new RelativeLayout.LayoutParams(wkw,wkh);
wkParams[1] = new RelativeLayout.LayoutParams(wkw,wkh);
wkParams[0].addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
wk[0].setLayoutParams(wkParams[0]);
wkParams[1].addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
wkParams[1].addRule(RIGHT_OF,wk[0].getId());
wk[1].setLayoutParams(wkParams[1]);
relativeLayout.addView(wk[0]);
relativeLayout.addView(wk[1]);
解决方案二:
wkParams[1].addRule(RelativeLayout.RIGHT_OF,wk[0].getId());看看是不是这个原因?
时间: 2024-11-10 00:30:11