在我的Android应用程序中,我以不同的方式制作AsyncTask,并且我想访问返回的整数,以便我可以在之后使用它。如何获取返回值,因为当我尝试将myBPM作为变量调用时,它要求使用AsyncTask而不是int。我如何获得返回值并将其存储为int?感谢
AsyncTask myBPM = new AsyncTask<Void, Void, Integer>(){
...
return BPM; //integer value
}
}.execute();
答案 0 :(得分:0)
AsyncTask<String, String, Integer> integervalue= new Download().execute("");
和类声明
答案 1 :(得分:0)
我不确定我是否明白你的观点,但你可以像这样使用onPostExecute() from AsyncTask:
private class AsyncTaskBPM extends AsyncTask<Void, Void, Integer> {
protected Integer doInBackground() {
// ...do your stuff
return result
}
protected void onPostExecute(Integer result) {
// ...here you can access your result passed as an integer
// You don't need to return this. You can just proceed in this method.
}
}
ps:未经测试的代码。直接进入这里。
答案 2 :(得分:-1)
class MyAsync extends AsyncTask<String, String, String>
{
@Override
public String doInBackground(String... params)
{
String str = "4";
return str;
}
}
无论您在何处调用此asynctask,请按照以下代码进行操作:
AsyncTask<String, String, String> execute = new MyAsync().execute();
try
{
String string = execute.get();
System.out.println("Resulted Int :: " +Integer.valueOf(string));
}
catch (Exception e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}