尝试在片段onCreateView中膨胀第二个布局时出错

时间:2016-03-20 20:11:09

标签: android view layout-inflater

我正试图在我的onCreateView中给视图充气,但我一直收到这个错误:

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

我试图给视图充气并根据列表中的项目数量将视图多次添加到指定的linearlayout。我在这里做错了什么?

View v = View.inflate(getActivity(), R.layout.list_item, null);

        for(int i = 0; i < totalItems; i++) {
            TextView itemNumbers = (TextView) v.findViewById(R.id.itemNumbers);
            ImageView itemBubbles = (ImageView) v.findViewById(R.id.itemBubbles);
            itemNumbers.setText("0" + String.valueOf(i+1));
            itemBubbles.setTag(i);
            final int finalI = i;
            itemBubbles.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    setupValues(finalI);
                }
            });
            theListItems.addView(v, i);
        }

1 个答案:

答案 0 :(得分:1)

你的通胀需要处于循环中。你曾经膨胀过一次,然后尝试多次添加它。它已经第二次添加,因此失败了。每个项目都需要单独充气。