吾生也有涯,而知也无涯。这篇文章主要讲述Android AsyncTask在完成工作后返回值相关的知识,希望能为你提供帮助。
这是我的第一篇文章。我为不好的英语道歉。我已经阅读了很多关于这个主题的问题。
编写一个应用程序,从服务器上的数据库向客户端下载电话号码和消息。
public class Connect extends AsyncTask<
String,Integer,ArrayList<
CUSTOMER>
>
{
ArrayList<
CUSTOMER>
clients= new ArrayList<
CUSTOMER>
();
if(type.equals("login"))
{
//... conection code
while((line = bufferedReader.readLine())!= null) {
if (line.equals(error)) {break;
} else {result += line + "
";
String podziel = new String(line);
String[] tab = null;
tab= podziel.split(";
");
for (int i = 0;
i <
tab.length;
i++) {
Log.e("peta "+Integer.toString(i), tab[i]);
}
licznik++;
CUSTOMER C= new CUSTOMER(Integer.parseInt(tab[0]), tab[1], tab[2]);
clients.add(C);
Thread.sleep(3000);
//Log.e("k ", clients.get(0).getId()+" "+clients.get(0).getNumer()+" "+clients.get(0).getDescryption()+"
");
}
}return clients;
}
1:
public class MainActivity extends AppCompatActivity {ArrayList<
CUSTOMER>
to_sent= new ArrayList<
CUSTOMER>
();
public void conn(View view){
String type="login";
Connect connect = new Connect(this, type);
to_sent=connect.execute(domena,DB_name, name, password, ip).get();
}
}
2:
public class MainActivity extends AppCompatActivity {ArrayList<
CUSTOMER>
to_sent= new ArrayList<
CUSTOMER>
();
public void conn(View view){
String type="login";
Connect connect = new Connect(this, type);
connect.execute(domena,DB_name, name, password, ip).get();
to_sent=connect.clients;
}
}
3:
public void sent(View view) {
String type="sent";
Connect connect = new Connect(this, type);
connect.clients=to_sent;
connect.execute(domena,DB_name, name, password, ip);
}
【Android AsyncTask在完成工作后返回值】如果他使用第一种方法,则无法看到UI块和ProgresDialog。另一个在我看来不正确,但它与ProgresDialog正常工作。尽可能简单地将ArrayList客户端返回到Main Activity?我需要这个数组到下一个按钮。
如果我写错了,请告诉我。
答案你错过了AsyncTask的全部内容。它不返回值,因为它并行执行。如果你要等到它完成,那么根本不会使用AsyncTask。任务完成后需要完成的任何代码都应该放在onPostExecute中。
推荐阅读
- Android Media Player(开始调用状态4错误(-38,0))
- 如何解决MySQL异常SQLSTATE [HY000](常规错误:1364字段”field_name”没有默认值)
- 如何解决(解决方案)Google的”程序员”游戏(海龟级)
- 如何在CentOS中安装bcmath扩展
- 如何使用EventListener根据用户在Symfony 2.8中的角色将用户重定向到特定页面
- 如何在Symfony 3.4中使用MonologBu??ndle通过电子邮件自动报告异常
- 我应该使用’#’还是’javascript(void(0);’在我的空链接的href属性上)
- 如何在Symfony 1.4中检索当前模块的名称
- 如何摆脱PHP警告(json_encode()期望参数2长,给定字符串)