2014-01-14 31 views
0

我创造,我想使用异步任务来查看数据多数民众赞成从服务器负载的活动..如何创建没有return语句一个Android异步任务

但每次我想设置多个TextView的数据服务器值......这就是为什么我不希望任何return语句..但不知道如何...请帮助..这是我的代码..

private class Downloadbasic extends AsyncTask<void, void, void> { 

    @Override 
    protected String doInBackground(String... params) { 

    //details code here 

    } 
} 

它给我的错误

+0

要使用的类型是'Void',它是一个对象。无论如何,在asynctask中,总是有一个return语句(但没有任何东西阻止你返回null) – njzk2

+1

用'Void'代替'void' – Houcine

回答

2

你不能操纵UI从doInBackground。将您的数据返回到onPostExecute,并使用该数据更新您的TextView。或者,将它们保存在全局变量中(不推荐),并将它们用于UI,但仍然来自onPostExecute

+2

如果必须在服务器工作期间更新值,也可以使用publishProgress。 – njzk2

0

只需查看您的问题:

代码:

//Here both your return type and parameter are Void and also not written perfectlly 
//write Void not void 
private class Downloadbasic extends AsyncTask<void, void, void> { 

@Override 
protected String doInBackground(String... params) { 

//details code here 

    } 
} 

所有你必须使用太虚没有无效 ..anyways

这里首先你都返回类型和参数类型是无效的,但在您的protected String doInBackground(String ... params)中使用字符串在这两种情况下。这是主要错误。

如果你想创建asynctask而没有返回,那么返回null必须帮助你在这里。

在做AsyncTask中的任何事情之前,请先阅读AsyncTask Documentation

然后看到这个conversation

由于

0
public class Downloadbasic extends AsyncTask<Void, Void, Void>{ 
     @Override 
     protected Void doInBackground(Void... params) { 
    //details code here 

}}