0

我在 LinearLayout 中有一些图像和文本视图。LinearLayout 的顶部边距和底部边距为 8sp 左右。

问题是我的所有图像都得到了那个边距,即使我告诉他们有边距 0 就像我告诉我的 LinearLayout 有边距 0

Android图像在纵向模式下获得边距 在横向时,图像和文本之间的边距消失 如您所见,当我将屏幕转为横向模式时,边距消失。

我做错了什么?

一切都以编程方式完成,即不使用 XML 文件。这是我在 LinearLayout 上设置边距的方法

LinearLayout contentLayout = new LinearLayout(getActivity());
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
    LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
params.setMargins(0,8,0,8);
contentLayout.setLayoutParams(params);

通过在图像上使用 android:adjustViewBounds 解决

4

2 回答 2

0

尝试将方向设置为垂直

contentLayout.setOrientation(1);
于 2013-07-19T16:03:21.243 回答
0

尝试这个:

//obtain dp equivalent of pixels
final float scale = getResources().getDisplayMetrics().density;
int margin = (int) (5 * scale + 0.5f);

应用于您的布局参数。

//setMargins(left, top, right, bottom)
params.setMargins(margin,margin,margin,margin);

我认为您没有设置marginLeft

让我知道这是否有帮助!

于 2013-07-19T16:10:11.460 回答