我有一个错误,我不知道它是什么意思。我是Android的新手
Caused by: java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first.
我正在尝试以编程方式将单选按钮组添加到表布局中
首先,我将单选按钮组添加到表格布局,并将单选按钮添加到单选按钮组
RadioGroup mRadioGroup;
mRadioGroup = new RadioGroup(this);
TableLayout mainTable = (TableLayout) findViewById(R.id.myTable);
mainTable.addView(mRadioGroup);
然后,我创建一行并将单选按钮组添加到该行,最后将该行添加到表布局中
TableRow row;
RadioButton radioButton = new RadioButton(this);
radioButton.setId(1);
radioButton.setText("SomeText");
row.addView(mRadioGroup);
mainTable.addView(row);
有人能帮上忙吗?
编辑:当我直接在表格布局上而不是在表格行上添加单选按钮组时,它可以工作
发布于 2012-08-05 11:28:56
您的问题是您同时向mainTable
和row
添加了mRadioGroup
mainTable.addView(mRadioGroup);
...
row.addView(mRadioGroup);
正如您部分发现的那样,删除这两行中的任何一行,它就会正常工作。
您不必为了将View
添加到TableRow
而将其添加到TableLayout
,但是它的行为取决于您是否这样做。
此外,您从未实际初始化过row
-请确保
TableRow row = new TableRow(this);
在你使用它之前!
https://stackoverflow.com/questions/11815819
复制相似问题