我需要在android中显示'n'
自定义对话框。我在while循环外创建了对话框并在循环内设置了消息。我需要根据循环显示包含不同消息的对话框。但是它在dialog.show()行中显示了android.view.WindowLeaked异常。任何人都可以帮助我解决我的问题。
我的代码是这样的:
//notif_count is the row count
if(notif_count>0)
{
dialog = new Dialog[notif_count];
for(ct=0;ct<notif_count;ct++)
{
dialog[ct] = new Dialog(this);
dialog[ct].requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog[ct].setContentView(R.layout.custom_dialog_alert);
}
cursor.moveToFirst();
ct = 0;
do
{
dec_name =cursor.getString(cursor.getColumnIndex(Database_Handler.name));
TextView tv_alert = (TextView)dialog[ct].findViewById(R.id.txt_alert);
tv_alert.setText( dec_name );
Button yes = (Button) dialog[ct].findViewById(R.id.btn_yes);
Button no = (Button) dialog[ct].findViewById(R.id.btn_no);
yes.setOnClickListener(new OnClickListener()
{
public void onClick(View v)
{
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse(donateurl));
startActivity(intent);
ct--;
dialog[ct].dismiss();
cursor.close();
sqldb.close();
finish();
}
});
no.setOnClickListener(new OnClickListener()
{
public void onClick(View v)
{
ct--;
dialog[ct].dismiss();
cursor.close();
sqldb.close();
finish();
}
});
dialog[ct].show();
ct ++;
}while(cursor.moveToNext());
}
答案 0 :(得分:0)
我认为不可能同时进行多个对话。
如果要显示一系列对话框,可以使用onclick侦听器。从一个对话框中打开以下对话框。 (dialog interface for the listeners) 如果你想阻止程序,那么用户必须点击对话框,设置对话框不可取消(setCancelable)