相对布局的布局参数问题

时间:2012-09-26 05:48:20

标签: android imageview relativelayout

我的应用程序出现问题,基本上我的布局很少: | ABC | 每个字母描述一个布局(A是相对布局)。 当我将图像视图添加到相对布局时,此图像视图 可以移动所有布局。但是相对布局变得拉伸到整个屏幕的宽度。 | A | 所以基本上你不能再看到B,C布局了。

这是我的功能:

public void startGame(){
    int i;
    for(i=0;i<currentLevelObs.size();i++){
        if(currentLevelObs.get(i)==Globals.OBS_ENTRY_INDEX)
            break;
    }


    lp = new RelativeLayout.LayoutParams(
                     RelativeLayout.LayoutParams.FILL_PARENT,
                     RelativeLayout.LayoutParams.FILL_PARENT);
    lp.addRule(RelativeLayout.BELOW, (i+1));
    lp.addRule(RelativeLayout.RIGHT_OF, i);
    lp.leftMargin = 25;


    ImageView img = new ImageView(this);
    img.setLayoutParams(lp);
    img.setBackgroundResource(R.drawable.hero);
    gameLayout.addView(img);

}

此函数从onCreate方法调用。

2 个答案:

答案 0 :(得分:0)

您已将layout width提供给fill parent.因此它会占据整个屏幕。那就是问题所在。将其更改为wrap-content,然后检查。

答案 1 :(得分:0)

ABC布局添加到ScrollView,这样您就可以向下滚动查看BC

它应该是这样的:

<ScrollView
..
...
....>
<D
..>
A
B
C
</D>
</ScrollView>

ScrollView只能包含1个孩子,因此请将ABC保持在D

中的ScrollView布局中