【问题标题】:Issue on image size, while adding it programmatically图像大小问题,同时以编程方式添加
【发布时间】:2013-05-02 06:15:20
【问题描述】:

我有一个小(有点棘手)的问题,我自己几个小时都无法解决。问题场景是:

我正在以编程方式(来自数据库)添加 TextView (即标题)和相关(可点击)ImageView。它们之间的边距已经很大(我没有在它们之间添加任何边距或填充)。我想将边距设置为仅 1dp。但我不能。

我使用了以下代码:

LinearLayout linearLayout = (LinearLayout) this.findViewById(R.id.linearLayout);

//No params and margins used for it
TextView tvTitle = new TextView(this); // getting from json (dynamically)
tvTitle.setTextSize(17) ;
tvTitle.setText(title) ;
linearLayout.addView(tvTitle) ;

ImageView image = new ImageView(this) ;
// here getting the image from url

LayoutParams params = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT) ;
params.setMargins(5, 0, 5, 0) ;
image.setLayoutParams( params );
linearLayout.addView(image) ;

因为这里 topMargin 和 bottomMargin 是 0 但是当应用程序运行时;图像上方和下方几乎有 20dp 的边距。

当我将边距从 20dp 增加时,即当我将任何 0 替换为 30 或 40 时,边距会增加,但当我将其减少到 5、1 或 0 时,它不会减少。它保持在大约 20 dp 附近。任何有想法的人...

【问题讨论】:

  • 为什么不想将布局准备为 xml 并通过代码中的 LayoutInflater 使用它?
  • 您能否检查 tvtitle Textview 边距或明确设置可能会造成问题?
  • 你好老板检查图像的高度和宽度等属性
  • @RupaliG... 是的,我用过但无法解决问题。实际上(我认为)这是由于某些指定的高度购买 android 操作系统。当我降低图像的高度时,它上方和下方的空间也会减小
  • @user527759...我从来没有尝试过。此方法是否以编程方式向 LinearLayout 添加“n”个视图?

标签: android android-imageview margins android-image


【解决方案1】:

听起来ImageView 上的视界没有得到正确调整。 尝试在您的 ImageView 上进行设置:

image.setAdjustViewBounds(true);

【讨论】:

    猜你喜欢
    • 2017-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多