我有没有孩子的LinearLayout意见动态地添加多个片段到我的活动布局
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
</LinearLayout>
,我想动态添加一个片段或两个片段按它的要求。 我知道增加一个片段,但我怎么能添加两个片段动态地给它。 我有两个片段,并且每个片段内我写以下oncreateview
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// TODO Auto-generated method stub
//return super.onCreateView(inflater, container, savedInstanceState);
View v=inflater.inflate(R.layout.frag1, container, false);
v.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
return v;
}
我试图使用以下代码来添加,但第二片段过来的第一个。
FragmentTransaction ft=fm.beginTransaction();
frag1 f=new frag1();
frag2 ff=new frag2();
ft.add(android.R.id.content, f);
ft.add(android.R.id.content, ff);
ft.commit();
好心地更新如何做到这一点。 感谢
+1我也在寻找这个问题的答案...这似乎这样一个重要的问题,但我无法找到答案:/ - 在活动布局中动态添加两个片段 - 这对我来说看起来非常标准,但它并不包含在任何afaik中。 – AgentKnopf
对此的更新是,您不能将两个添加到android.R.id.content,而是添加到Layout(如LinearLayout或其他任何一个ID),如下所示:if id one是viewgroup的id,然后ft.add(R.id 。一中,f, “一个”); ft.add(R.id.one,FF, “二”); ft.commit();请尝试一下并更新 – user2779311
谢谢你回复我:)!实际上现在我发现了一种在一个Activity中托管两个片段的方法。所有需要做的事情是在布局中放置两个容器 - 每个片段一个,然后为它们设置一个重量。如:第一个容器获得30%的空间,第二个容器获得70%的空间。如果你需要更多的细节,请让我知道。它大部分都是在布局文件中设置的,所以你会改变你的片段事务,把每一个添加到它的目标容器的ID中。 – AgentKnopf