是否可以逐步迭代循环,以便在进入下一次迭代之前使用提示对话框或编辑框获取值。
for(int x=0;x<10;x++)
{
string variable_ = userinput //wait unless user enter someting before moving to next iteration i.e x=1.
}
我知道在Java中,我们可以使用简单的扫描仪来完成这项工作,但在android中,我使用了propmtdialogue box,如图所示,但它只是在不等待的情况下移动。
一种方法是可能的
//create one boolean variable
boolean inputCame ;
for(int x=0;x<10;x++)
{
inputCame = false; // make it false before reading input
string variable_ = userinput //wait unless user enter someting before moving to next iteration i.e x=1.
// set inputCame variable true when your ok and cancel button of dialogue is pressed
while(inputCame==false){ // stop the for loop until inputCame is true
}
}
这只是实现它的一个例子
编辑
我看到你在用AlertDialog
。AlertDialog
是异步的,它不会停止进一步的代码执行。
关于你的问题,谷歌上有很多例子。
我能在这里看到的一个http://www.tomswebdesign.net/Articles/Android/wait-for-user-input-from-dialog.html
您不能也不应该阻塞主线程。对于您想要的内容,您需要在输入对话框上实现自己的观察者模式。