0

我正在使用动态布局,我想设置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;
4

2 回答 2

0

我设置了图像视图,但它不显示

尝试这样的事情:

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可能是罪魁祸首。

于 2012-11-12T19:28:14.833 回答
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.

于 2012-11-11T19:35:32.247 回答