转自:http://blog.csdn.net/okgogogo1/article/details/7451938
这个问题纠结了整整一天,刚开始满觉得没有什么问题,本身彻底能搞定的,最后试过各类方法仍是无效,无奈求助百度,总算让我找到了,转自csdn博客,可去原地址查看,这里本身也作个备份 html
ActivityGroup的用法就是用来盛放多个Activity的容器,用来切换子Activity!
定义ActivityGroup的时候会使用Layout_Weight=1来使得子A充满剩余空间
好比:
下面的ImageView来切换子A。
经过父A的中间的View来盛放,可是中间这个View的高度不是xml定义的高度与宽度,是自适应的。
他的布局文件时这样的
明显是使用了fill_parent!为何它没法充满屏幕?原来父控件的尺寸就不是fill_parent,是自适应的。
因此在给中间的View 添加子A的时候,须要额外的给它设置参数,以上的问题就获得解决。
- activity_container.removeAllViews();
- View childView = getLocalActivityManager().
- startActivity(CampusConstants.ID_ACTIVITY[id], new Intent(MainActivityGroup.this,activity).
- addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP)).getDecorView();
- childView.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
- activity_container.addView(childView);