似乎我的AlertDialog
在形成时不起作用并且第二次显示。我在主程序中捕获了PickFsDone,当我第二次调用下面的函数时似乎没有设置为true ...
任何建议,我做错了什么?
提前致谢, 问候, 罗布。
编辑:在代码中添加了更多详细信息。主程序循环停止 等待Dialog,虽然Dialog已在屏幕上成功结束。 这种情况第二次发生,第一次起作用......添加 dialog.dismiss()deosn的帮助。
public void createListAlertDialog() {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Pick a Sampling Rate");
builder.setSingleChoiceItems(SampleRates_Str.toArray(new String[SampleRates_Str.size()]), SampleRates_Index,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int item) {
SampleRates_Index = item;
}
});
builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
PickFsDone = true;
}
}
);
AlertDialog alert = builder.create();
alert.show();
}
public void PickSampleRate ()
{
final boolean Wait;
runOnUiThread(new Runnable() {
@Override
public void run() {
//Create the alert dialog
createListAlertDialog();
}
}
);
}
// In Main Program :
PickFsDone = false;
PickSampleRate();
//Wait for Dialog to finish
while (true) {
if (PickFsDone) break;
};