2012-09-26 215 views
0

我遇到了問題,我的應用程序,基本上我有這樣的幾個佈局: | 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方法調用。

回答

0

您已將layout width設置爲fill parent.因此,它將佔用整個屏幕。那就是問題所在。將其更改爲wrap-content然後檢查。

+0

謝謝你的快速反應。當圖像視圖移動圖像正在消失時,我已嘗試此解決方案 –

0

將您的ABC佈局添加到ScrollView,這樣您可以向下滾動以查看BC

它應該是這樣的:

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

滾動型只能包含1名兒童,因此,保持你ABCD佈局是在ScrollView

+0

相對佈局設置爲固定大小。我的應用程序讀取障礙文件(每個級別的所有障礙物的位置),所以我不能使用滾動視圖。 –