当前位置: 代码迷 >> Android >> 请教addView进来的东西如何填满add它的父容器
  详细解决方案

请教addView进来的东西如何填满add它的父容器

热度:86   发布时间:2016-05-01 15:07:33.0
请问addView进来的东西怎么填满add它的父容器?
有三个layout,一个是外框,一个是图片内容,一个是信息文本
外框那个是用在某个Activity里的

而外加就根据条件来判断到底要add哪个
add其中一个图片layout的代码大概如下:

private RelativeLayout showContents;//外框的内容显示区
private LayoutInflater lflater;//我理解为layout搜索器
showContents = (RelativeLayout)findViewById(R.id.showContents);
lflater = LayoutInflater.from(this);
View MBK = (View)lflater.inflate(R.layout.mbk, null);
ImageView imgMBK = (ImageView)MBK.findViewById(R.id.imgMBK);//从MBK图片layout里得到某个图片的对象
infoShowActivity.addView(imgMBK);

=================
好了问题出来了,假设我是854*480的屏幕
我什么宽高都是match_parent
包括图片那个layout也设置了match_parent
可是被showContents.addView进去后居然没有填满showContents的区域(showContents占满屏),反而见到图片按照实际像素显示了..
好郁闷啊
在这里我就认为,一个layout界面里的控件width和height所谓相对于父容器match_parent什么fill_parent这些,只是相对于这个layout文件里的上一节点而然,并不相对于对象模型关系结构里的父容器对象填充
所以就算我的图片是match_parent,但是它并不相对于另一个layout的showCentents,只相对于它那个layout..
哎,所以我现在都不知怎么让addView进来的东西填满add它的父容器.

------解决方案--------------------
fill_parent 是填满父控件的,试试看,不行的话就用像素了