Android 添加侦听器后未执行AsyncTask循环

Android 添加侦听器后未执行AsyncTask循环,android,android-asynctask,listener,Android,Android Asynctask,Listener,我正在尝试从我的公共类saveData任务获取响应 为此,我添加了一个公共接口OnTaskCompleted()。但是For循环没有执行,它直接从For行转到return,而onPostExecute()永远不会执行。如果我删除了接口,那么循环将正常工作 我的活动: 我的异步任务类 public class SaveMyData extends AsyncTask<List<String>, Void, Void> { private OnTaskComplete

我正在尝试从我的公共类saveData任务获取响应

为此,我添加了一个
公共接口OnTaskCompleted()
。但是For循环没有执行,它直接从For行转到return,而
onPostExecute()
永远不会执行。如果我删除了接口,那么循环将正常工作

我的活动:

我的异步任务类

public class SaveMyData extends AsyncTask<List<String>, Void, Void> {
    private OnTaskCompleted listener;
    boolean myflag = false;

 public SaveMyData (OnTaskCompleted listener){
    this.listener=listener;
}

 @Override
public void onPreExecute() {
    // TODO Auto-generated method stub
}

@Override
protected Void doInBackground(List<String>... params) {
      for (int i = 1; i == 5; i++) {
      }
 return null;
}

 @Override
public void onPostExecute(Void result) {
    // TODO Auto-generated method stub
    super.onPostExecute(result);

        listener.onTaskCompleted(myflag);

}
}
公共类SaveMyData扩展异步任务{
私有OnTaskCompleted侦听器;
布尔myflag=false;
public SaveMyData(OnTaskCompleted侦听器){
this.listener=listener;
}
@凌驾
公共无效onPreExecute(){
//TODO自动生成的方法存根
}
@凌驾
受保护的Void doInBackground(列表…参数){
对于(int i=1;i==5;i++){
}
返回null;
}
@凌驾
PostExecute上的公共作废(作废结果){
//TODO自动生成的方法存根
super.onPostExecute(结果);
onTaskCompleted(myflag);
}
}

谢谢您的帮助。

您为循环设置的条件是错误的。你为循环设置的条件不应该是错误的。你为循环设置的条件不应该是错误的。你为循环设置的条件不应该是错误的。你为循环设置的条件不应该是错误的(inti=1;i正如@Neo先生所说,构造函数和类名应该相同,例如:

public class saveData extends AsyncTask<List<String>, Void, Void> {
    private OnTaskCompleted listener;
    boolean myflag = false;

public saveData(OnTaskCompleted listener){
    this.listener=listener;
}
SaveData saveData = new SaveData(someParams);
saveData.execute(otherSomeParams);

好的编码方式造就了好的开发人员。

正如@Neo先生所说,构造函数和类名应该相同,例如:

public class saveData extends AsyncTask<List<String>, Void, Void> {
    private OnTaskCompleted listener;
    boolean myflag = false;

public saveData(OnTaskCompleted listener){
    this.listener=listener;
}
SaveData saveData = new SaveData(someParams);
saveData.execute(otherSomeParams);

好的编码方式造就了好的开发人员。

正如@Neo先生所说,构造函数和类名应该相同,例如:

public class saveData extends AsyncTask<List<String>, Void, Void> {
    private OnTaskCompleted listener;
    boolean myflag = false;

public saveData(OnTaskCompleted listener){
    this.listener=listener;
}
SaveData saveData = new SaveData(someParams);
saveData.execute(otherSomeParams);

好的编码方式造就了好的开发人员。

正如@Neo先生所说,构造函数和类名应该相同,例如:

public class saveData extends AsyncTask<List<String>, Void, Void> {
    private OnTaskCompleted listener;
    boolean myflag = false;

public saveData(OnTaskCompleted listener){
    this.listener=listener;
}
SaveData saveData = new SaveData(someParams);
saveData.execute(otherSomeParams);


良好的编码方式造就了优秀的开发人员。

执行方法未被调用您的
构造函数的名称
saveInvDetails
与类名
saveData
很抱歉,这是类型错误执行方法未被调用您的
构造函数的名称
saveInvDetails
与类名
不同>saveData
很抱歉没有调用类型ErrorExecute方法您的
构造函数的名称
saveInvDetails
与类名
saveData
很抱歉没有调用类型ErrorExecute方法您的
构造函数的名称
saveInvDetails
不同于类名
saveData
很抱歉,这是一个“类型错误”和一个非静态成员声明名称“…我想说:该类实例的名称应该启动…@greeapps感谢您对我的英语的帮助。我不是一个说英语的人,也不是一个生活在英语国家的人,我从大学退学了。所以,忘了我的英语吧。:)很抱歉,问题中的键入错误原始代码是正确的。我已经更正了它,但正如您在我的问题中看到的,如果我删除listner,一切都会正常工作。“和一个非静态成员声明名称”…我会说:并且应该启动该类实例的名称…@greeapps感谢您对我的英语的帮助。我是一个非e类我是讲英语的,不是一个住在英语国家的人,我从大学退学了。所以忘了我的英语吧。:)很抱歉,问题中的键入错误原始代码是正确的。我已经更正了它,但正如您在我的问题中看到的,如果我删除listner,一切都会正常工作。“和一个非静态成员声明名称”…我会说:并且应该启动该类实例的名称…@greeapps感谢您对我的英语的帮助。我是一个非e类我是讲英语的,不是一个住在英语国家的人,我从大学退学了。所以忘了我的英语吧。:)很抱歉,问题中的键入错误原始代码是正确的。我已经更正了它,但正如您在我的问题中看到的,如果我删除listner,一切都会正常工作。“和一个非静态成员声明名称”…我会说:并且应该启动该类实例的名称…@greeapps感谢您对我的英语的帮助。我是一个非e类我是讲英语的,不是一个住在英语国家的人,我从大学退学了。所以忘了我的英语吧。:)抱歉,问题中的一个键入错误原始代码是正确的。我已经更正了它,但正如您在我的问题中看到的,如果我删除listner,一切都可以正常工作。我将它设置为<5,需要它转到5,所以enter==当然,只有当我为5时才会转换为循环。谢谢。我将它设置为<5,需要它转到5,所以enter==哪一个当然,只有当我是5时,才会运行转换到循环。谢谢。我把它设置为<5,需要它转到5,所以回车==当然,只有当我是5时才会运行转换到循环。谢谢。我把它设置为<5,需要它转到5,所以回车==当然,只有当我是5时才会运行转换到循环。谢谢。