片段-无法添加子视图,说孩子已经有父母

时间:2018-12-01 07:54:45

标签: android android-collapsingtoolbarlayout viewgroup

在片段中:我正在尝试添加视图,但收到错误Exception IllegalStateException。

以下我尝试过的解决方案:

1)Call removeView() on the child's parent first

2)The specified child already has a parent. You must call removeView() on the child's parent first (Android)

3){{3}}

尝试了所有上述解决方案后仍然出现相同的错误。

这是我的代码:

Fragment.java:

 View kidInfoView = getLayoutInflater().inflate(R.layout.include_kid_info_layout,null,false);

        if (onCollapsingToolbarLayout().getParent() !=null) {
           ViewGroup parent = (ViewGroup) onCollapsingToolbarLayout().getParent();
           parent.removeView(kidInfoView);
            onCollapsingToolbarLayout().addView(kidInfoView); <-- getting error here
        }

@Override
    public CollapsingToolbarLayout onCollapsingToolbarLayout() {
        collapsingToolbarLayout.setVisibility(View.VISIBLE);
        return collapsingToolbarLayout;
    }

我在做什么错?请提出建议。

1 个答案:

答案 0 :(得分:0)

如果要在折叠的工具栏中添加一些视图,则需要编写以下代码。
View idInfoView = getLayoutInflater().inflate(R.layout.include_kid_info_layout, onCollapsingToolbarLayout(), true);

如果条件不明,我不知道你在做什么。

您将成为collepsingtoolbar的父级,并从此父级中调用kidInfoView上的remove视图(作为第一个子级)(上面的两个语句被夸大,并且未添加到父级)。
之后,您将kidInfoView添加到collapsingtoolbar(但是kindInfoView没有匹配的布局参数。)