2012-11-11 97 views
0

我正在使用动态布局我想要设置宽度和高度ImageView。代码如下。如何在给定的布局中设置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; 
+1

我不明白...你只需在TextView上设置LayoutParams,为什么你不能在ImageView上做同样的事情? – Sam

+0

我设置了imageview,但不显示。 – rameesha

回答

0

而是可以调用只用ImageView打电话addView(),你可以使用的版本也采用了宽度和高度两个整数:

addView(View child, int width, int height)

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

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

基本上它与TextView已做的相似。

+0

我试过上面的代码,但图像不显示只有文本是显示:( – rameesha

+0

@rameesha:你是否已经在调试器附带的调试器上运行代码,以确认你实际上正在设置一个有效的'位图' ImageView'? –

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

+0

我试过上面的代码,但是图片不显示只有文本显示:( – rameesha

+0

那么位图是问题,用你的调试器跟踪'bitmap'的值。 – Sam