【发布时间】:2020-08-27 08:39:09
【问题描述】:
我正在尝试以编程方式将一些图像添加到 LinearLayout。
图片的xml如下:
<ImageView
android:id="@+id/iv_card27"
android:layout_width="50dp"
android:layout_height="match_parent"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:scaleType="centerInside"
app:srcCompat="@drawable/back" />
这是我已经尝试过的java代码:
ImageView card = new ImageView(this);
card.getLayoutParams().width = 50;
card.getLayoutParams().height = ViewGroup.LayoutParams.MATCH_PARENT;
card.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
card.setImageResource(R.drawable.back);
bottomRow.addView(card);
但是我一直在努力添加边距,而且我担心我设置为 50 的宽度。但它实际上应该是 50dp。我怎样才能做到这一点?
【问题讨论】:
-
我会通过布局充气器充气 xml 布局。这要容易得多。如果这样做,您可以稍后在 xml 文件中而不是在代码中编辑布局。但是,如果您明确想要以编程方式进行更改,则可以这样做。 Illya Bublyk 的回答完全正确......
-
嗯,我认为这是最好的方法。我似乎无法复制我使用带有编码的设计器设计的布局。谢谢!
-
没问题。如果您需要进一步的帮助,请查看这个 SO 问题https://stackoverflow.com/q/2335813/9610875
标签: android android-layout android-imageview