如果循环获胜';关闭对话框后执行(首次使用java)java/Android
在按下“确定”按钮关闭此对话框后,我试图更改文本视图中的文本。但我想做一个循环。我将“alleroclosed”设置为布尔值,并将其初始化为false。按下“ok_按钮”后,循环将不会启动,或者它不会接受布尔变量“alleroclosed” ======== 它不会将字符串更改为“It works”如果循环获胜';关闭对话框后执行(首次使用java)java/Android,java,android,loops,Java,Android,Loops,在按下“确定”按钮关闭此对话框后,我试图更改文本视图中的文本。但我想做一个循环。我将“alleroclosed”设置为布尔值,并将其初始化为false。按下“ok_按钮”后,循环将不会启动,或者它不会接受布尔变量“alleroclosed” ======== 它不会将字符串更改为“It works” 如果你能以任何方式帮助我,我将非常感激。我是这方面的新手。谢谢 仅当单击“确定”按钮时,布尔值才会设置为true。if块在创建并注册侦听器之后立即执行 如果希望在单击“确定”按钮时执行此代码,则if
如果你能以任何方式帮助我,我将非常感激。我是这方面的新手。谢谢 仅当单击“确定”按钮时,布尔值才会设置为true。
if
块在创建并注册侦听器之后立即执行
如果希望在单击“确定”按钮时执行此代码,则if vlock的内容应位于侦听器的
onClick()
方法中。我认为问题在于您正在调用
if (alleroclosed) {
alleroclosed=false;
alleroSTATUS.setText("it works");
}
在onClick()
方法之外,因此它永远不会被应用
您的代码块直接放在onCreate()方法中,当捕获click事件时不会调用此方法,因此仅应用一次—当调用onCreate()时,alleroclosed=false
因此,当您将它放在onClick()方法中时,它就会起作用
...
public void onClick(View v) {
alleroclosed = true;
dialog.dismiss();
if (alleroclosed) {
alleroclosed=false;
alleroSTATUS.setText("it works");
}
...
}要在单击按钮时执行的任务应使用onClick()方法编写。。。
在上面的代码中,如果单击按钮后对话框关闭,则要调用。。。
因此,只需将onclick()设置为如下所示
下面的链接讨论了使用onClick()的方法
希望它能起作用……@AlexTarnawski不客气:),当它起作用时,你能接受我的询问吗?谢谢
...
public void onClick(View v) {
alleroclosed = true;
dialog.dismiss();
if (alleroclosed) {
alleroclosed=false;
alleroSTATUS.setText("it works");
}
...
public void onClick(View v) {
dialog.dismiss();
if (somecondition) {
// task you want to do...
}
}