0

我尝试通过 FragmentManager 和 FragmentTransaction(来自 android.support.v4.app)将一个 Fragment 放入另一个 Fragment 内的 FrameLayout 中。容器片段在顶部有一个按钮和一个 TextView,在底部有一个 FrameLayout(我以编程方式创建布局,我不想因为所有这些而伤害您的眼睛)。CreateView() 工作得很好,我无法访问容器底部的 FrameLayout 并可以通过动态添加或删除 View

@Override
public void onClick(View button) {      
    FrameLayout frame = (FrameLayout)findViewById(DETAIL_CONTENT_FRAME);
    ImageView im = new ImageView(this);
    im.setImageResource(R.drawable.test);
    frame.addView(im);
}

但是当我尝试将片段而不是 ImageView 添加到 frameLayout 时,代码可以完美编译,但是在调用 onClickListener() 方法后没有出现所需的片段。我检查了片段的 onCreateView() 方法,它返回了一个正确的视图......

@Override
public void onClick(View button) {
    ServerDialogFragment serverDialog = new ServerDialogFragment();
    FragmentTransaction addDialog = getSupportFragmentManager().beginTransaction();
    addDialog.add(DETAIL_CONTENT_FRAME, serverDialog);
    addDialog.commit();
}

你对此有答案吗?

PS:我曾经尝试将片段添加到其他片段中并且它有效,但它们是仅包含 ImageViews 的简单片段。

4

1 回答 1

1

目前不支持其他片段中的片段。看:

于 2011-09-06T14:57:45.333 回答