首页 > 解决方案 > 在 LinearLayouts 之间添加空间

问题描述

我正在尝试制作一个数据库项目列表,如下所示..

   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);

           }

结果是这样的: 物品清单

但我想在线性布局之间留出空间并使图像高度更短以与按钮高度相等 [看到这个]

我怎样才能做到这一点?谢谢,

标签: javaandroid

解决方案


请尝试此代码

  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);


推荐阅读