我在代码中动态地将ImageView
添加到相对布局中
但是这个imageView有时是可见的,有时不是。我可以看到调试时图像被添加到布局中。
我甚至使用了invalidate();
refreshDrawable();
,但无济于事。
任何想法或帮助都将受到高度赞赏。
首先,我将以前添加的图像删除到相对布局..
int size= lv_header.getChildCount();
for(int i=size;i>=0;i--)
{
if(lv_header.getChildAt(i) instanceof ImageView)
{ if(lv_header.getChildAt(i)!=null){
lv_header.removeViewAt(i);
break;
}
}
}
之后,我正在添加新的imageView ..
RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
lp.addRule(RelativeLayout.ALIGN_PARENT_RIGHT,v.getId());
lv_header.addView(imageButton,lp);
imageButton.refreshDrawableState();
lv_header.invalidate();
答案 0 :(得分:1)
您是否正在将一个ImageView替换为另一个? 为什么不保留原始ImageView并使用setImageDrawable()或setImageBitmap()更改它的可绘制源?