簡體   English   中英

刪除LinearLayout中子項之間的空格

[英]Remove space between childrens in a LinearLayout

我正在開發一款有趣的Android游戲,我無法在LinearLayouts中刪除我的ImageViews之間的空間。 這些布局中沒有定義數量的ImageView,這就是我不處理XML文件的原因。 所以我在我的Java代碼中創建了每個ImageViews,並在我的Layout中添加了它們。 但每個之間都有空格: ImageViews之間的空格 (藍色/紅色/綠色方塊是ImageViews)。 我開始使用GridLayout來做到這一點,但我無法刪除該空白區域,所以我嘗試使用一些LinearLayouts(水平)到其他LinearLayout(垂直)。

我已經嘗試了很多東西,比如setMargin和Padding為0,創建一個LayoutParams來刪除它們等等。但它沒有用。

謝謝 !

編輯:這是我的代碼

iv = new ImageView[cm.getNbRow()][cm.getNbColumn()];    //cm is the map object

LinearLayout[] linearTab = new LinearLayout[cm.getNbColumn()];
for(int i=0; i<cm.getNbRow(); i++) {
    linearTab[i] = new LinearLayout(this);
    linearTab[i].setOrientation(LinearLayout.HORIZONTAL);
}

for(int i=0; i<cm.getNbRow(); i++) {
    for(int ii = 0; ii < cm.getNbColumn(); ii++) {
        if(cm.getMap()[i][ii] == 1) {
            iv[i][ii] = new ImageView(this);
            iv[i][ii].setImageResource(R.drawable.wall);
        } else if(cm.getMap()[i][ii] == 2) {
            p = new Player(i, ii, this, cm);
            iv[i][ii] = new ImageView(this);
            iv[i][ii].setImageResource(R.drawable.player);
        } else if(cm.getMap()[i][ii] == 3) {
            iv[i][ii] = new ImageView(this);
            iv[i][ii].setImageResource(R.drawable.stop);
        } else {
            iv[i][ii] = new ImageView(this);
            iv[i][ii].setImageResource(R.drawable.path);
        }
        linearTab[i].addView(iv[i][ii]);        //Horizontal LinearLayout
    }
    ll.addView(linearTab[i]);                   //Vertical LinearLayout
}

編輯2:Android Studio為ImageViews添加了transparents邊框(不知道為什么)但我通過編輯生成的圖像並為transparents部件着色來解決它。

你試過android:adjustViewBounds="true"

導入圖像時,需要確保選項“Trim”設置為“yes”,“Padding”設置為0%。 這應該確保圖像周圍沒有透明區域。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM