Java 如何通过在弹出对话框中按OK按钮正确启动nextQuestion方法?
在我的问答游戏中,在回答错误后,我会调用一个弹出窗口,以获得结果。在弹出窗口中,我有一个OK按钮。我需要,在用户按下OK按钮后,加载下一个问题。但现在,我看到在后台加载了下一个问题,即使我的弹出窗口并没有关闭。这是我的密码:Java 如何通过在弹出对话框中按OK按钮正确启动nextQuestion方法?,java,android,Java,Android,在我的问答游戏中,在回答错误后,我会调用一个弹出窗口,以获得结果。在弹出窗口中,我有一个OK按钮。我需要,在用户按下OK按钮后,加载下一个问题。但现在,我看到在后台加载了下一个问题,即使我的弹出窗口并没有关闭。这是我的密码: static final int MY_REQUEST = 0; Intent i = new Intent(Kviz.this, Popup_pogresno.class); startActivityForResult(i, M
static final int MY_REQUEST = 0;
Intent i = new Intent(Kviz.this, Popup_pogresno.class);
startActivityForResult(i, MY_REQUEST);
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
nextQuestion();
}
和我的弹出类(这是一个主题对话活动):
因此,我需要在按下OK按钮之前不要加载下一个问题。在
弹出窗口中设置结果代码,然后根据请求代码在Kviz
活动中检查此结果代码。如果结果代码正常,则调用函数nextQuestion()
将结果代码设置为follow,并检入is结果代码的Kviz
Intent i = new Intent(Kviz.this, Popup_pogresno.class);
startActivityForResult(i, MY_REQUEST);
在确定按钮上设置结果代码点击弹出窗口
Intent returnIntent = new Intent();
setResult(RESULT_OK, returnIntent);
finish();
检查结果代码
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == MY_REQUEST) {
if(resultCode == RESULT_OK){
nextQuestion();
}
if (resultCode == RESULT_CANCELED) {
//Write your code if there's no result
}
}
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == MY_REQUEST) {
if(resultCode == RESULT_OK){
nextQuestion();
}
if (resultCode == RESULT_CANCELED) {
//Write your code if there's no result
}
}
}