我用findViewById()
,然后设置一个'onclicklistener”的后援代码获得的RadioButton
对象是这样:上一个单选按钮点击两次生成IllegalStateException异常
final EditText editTextView = (EditText)findViewById(2001);
RadioButton rb = (RadioButton) findViewById(R.id.radio3);
rb.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
LinearLayout linearLayout = (LinearLayout) findViewById(R.id.editTextGroupLayout);
LayoutParams params = new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT);
editTextView.setLayoutParams(params);
editTextView.setInputType(InputType.TYPE_NUMBER_FLAG_DECIMAL| InputType.TYPE_NUMBER_FLAG_SIGNED);
editTextView.setId(2001);
linearLayout.addView(editTextView);
}
});
当我点击一旦上radiobutton
它的工作原理fine.But当我点击它两次,它产生
java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first.
点击两次为什么THI发生了什么异常?
我试图
我试图这样做,它不会执行删除线final EditText editTextView = (EditText)findViewById(2001);
并添加onClick()
内这条线,EditText editTextView = (EditText)findViewById(2001);
。但即使once.It显示exception
了。
您是否想在每次点击RadiButton时添加editext? –
你能解释一下你想要做什么吗?也许你想显示/隐藏'EditText'而不是添加/删除它?至于错误,是由于添加了一个已经存在的EditText引起的。 –
是想添加edittext或每次点击后显示/隐藏它。亚当已经回答了它为我工作。请检查答案。谢谢你的关注。 –