0

我的应用程序有问题,基本上我很少有这样的布局:|ABC| 每个字母描述一个布局(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 方法调用。

4

2 回答 2

0

你已经给layout widthfill parent.所以它会占据整个屏幕。那就是问题所在。将其更改为wrap-content然后检查。

于 2012-09-26T05:52:13.190 回答
0

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

它应该是这样的:

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

ScrollView只能包含 1 个孩子,因此请保持ABCDScrollView

于 2012-09-26T05:57:44.473 回答