亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 LinearLayouts 之間添加空間

在 LinearLayouts 之間添加空間

青春有我 2021-09-03 17:34:13
我正在嘗試制作如下所示的數據庫項目列表..   for (int i=0; i < jArray.length(); i++)           {               JSONObject row = jArray.getJSONObject(i);               LinearLayout ll = new LinearLayout(MainActivity.this);               ll.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,100));               Button btn = new Button(MainActivity.this);               //btn.setText(row.getString("subject"));               btn.setText(String.valueOf(i));               btn.setLayoutParams(new LinearLayout.LayoutParams(0,LinearLayout.LayoutParams.MATCH_PARENT,(float)0.8));               File imgFile = new  File(file_path);               Bitmap myBitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath());               ImageView iv = new ImageView(MainActivity.this);               iv.setScaleType(ImageView.ScaleType.FIT_XY);               iv.setImageBitmap(myBitmap);               iv.setLayoutParams(new LinearLayout.LayoutParams(0,LinearLayout.LayoutParams.MATCH_PARENT,(float)0.2));               ll.addView(btn);               ll.addView(iv);               LinearLayout sv = findViewById(R.id.sv_layout);               sv.addView(ll);           }結果是這樣的:但我想在線性布局之間留出空間并使圖像高度更短以與按鈕高度相等我怎樣才能做到這一點?謝謝,
查看完整描述

3 回答

?
鳳凰求蠱

TA貢獻1825條經驗 獲得超4個贊

在布局參數中設置邊距并將它們傳遞給您的 ImageView 對象。


  LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(0,LinearLayout.LayoutParams.MATCH_PARENT,(float)0.2);

            int dp = getDps(8);

            layoutParams.setMargins(0,dp,0,dp);

            iv.setLayoutParams(layoutParams);

函數 getDps():


public int getDps(int sizeInDp){

        float scale = getResources().getDisplayMetrics().density;

        return  (int) (sizeInDp*scale + 0.5f);

    }

這看起來像:

http://img1.sycdn.imooc.com//6131ec5d0001ece307311285.jpg

查看完整回答
反對 回復 2021-09-03
?
拉莫斯之舞

TA貢獻1820條經驗 獲得超10個贊

以水平方向的線性布局拍攝按鈕和圖像。設置 Button 和 Imageview 高度以包裝內容?,F在為線性布局之間的間隙提供適當的邊距。


查看完整回答
反對 回復 2021-09-03
?
有只小跳蛙

TA貢獻1824條經驗 獲得超8個贊

請試試這個代碼

  LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, 100);
                    params.setMargins(0, 5, 5, 10);
                    ll.setLayoutParams(params);

您可以在此行中添加您的特定邊距 params.setMargins(0, 5, 5, 10);


查看完整回答
反對 回復 2021-09-03
  • 3 回答
  • 0 關注
  • 171 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號