当我试图在
如果我注释掉alertDialog.show(),那么它就能正常工作,但是我需要它。
ImageViews
(iView
和iView2
)中添加alertDialog.show()
时,我的代码崩溃并显示以下错误信息:
我不知道为什么会出现这种情况。实际上,我已经阅读了关于此错误消息的内容,并且可能是由于使用了两次指定的子项已经有一个父级。您必须首先对子项的父级调用
removeView()
。
alertDialog.show()
。您有什么建议吗?mLayout = (RelativeLayout) findViewById(R.id.relaLayout);
final EditText input = new EditText(MainActivity.this);
final AlertDialog.Builder alertDialog = new AlertDialog.Builder(MainActivity.this);
final LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.MATCH_PARENT
,LinearLayout.LayoutParams.MATCH_PARENT);
iView
input.setLayoutParams(lp);
iView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
select = 0;
alertDialog.setView(input);
alertDialog.setPositiveButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
m_Text = input.getText().toString();
mLayout.addView(cth[0].setCardView(select, m_Text));
iView.setClickable(false);
}
});
alertDialog.setNegativeButton("CANCEL", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
finish();
}
});
alertDialog.show();
}
});
iView2
iView2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
select = 1;
//input.setLayoutParams(lp);
alertDialog.setView(input);
alertDialog.setPositiveButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
m_Text = input.getText().toString();
mLayout.addView(cth[0].setCardView(select, m_Text));
iView2.setClickable(false);
}
});
alertDialog.setNegativeButton("CANCEL", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
finish();
}
});
alertDialog.show();
}
});
如果我注释掉alertDialog.show(),那么它就能正常工作,但是我需要它。