动态布局中imageview的宽度和高度

时间:2012-11-11 19:24:26

标签: android android-layout android-view

我正在使用动态布局我想设置ImageView的宽度和高度。代码如下。如何在给定布局中设置ImageView的高度和宽度?任何帮助都非常感谢。

    RelativeLayout layout = new RelativeLayout(mContext);
    TextView text1 = new TextView(mContext);
    text1.setText(Constants.vctrCategory.elementAt(counter).toString());
    LayoutParams params1 = new    LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
    params1.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
    text1.setLayoutParams(params1);
    text1.setTextSize(20);
    layout.addView(text1);
    ImageView image = new ImageView(mContext);
    image.setImageBitmap(bitmap);
    layout.addView(image);
    counter++;
    return layout;

2 个答案:

答案 0 :(得分:0)

相反可以仅使用addView()调用ImageView,您可以使用同样采用两个整数的宽度和高度的版本:

addView(View child, int width, int height)

或者,您可以直接在视图的LayoutParams上设置宽度和/或高度,即在您自己的代码段中调用layout.addView(image)之后:

layout.addView(image);
layout.getLayoutParams().width = width;
layout.getLayoutParams().height = height;

基本上它与你为TextView所做的一样。

答案 1 :(得分:0)

  

我设置了imageview但它没有显示

尝试这样的事情:

RelativeLayout layout = new RelativeLayout(this);

LayoutParams params1 = new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
params1.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
TextView text1 = new TextView(this);
text1.setText(Constants.vctrCategory.elementAt(counter).toString());
text1.setTextSize(20);
layout.addView(text1, params1);

LayoutParams params2 = new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
params2.addRule(RelativeLayout.ALIGN_PARENT_LEFT);
ImageView image = new ImageView(this);
image.setImageBitmap(bitmap);
layout.addView(image, params2);

count++;
return layout;

还有很多其他的LayoutParams类,请确保导入RelativeLayout.LayoutParams。如果这仍然“不显示”那么bitmap可能是罪魁祸首。

相关问题