Android 返回int的简单异步任务

Android 返回int的简单异步任务,android,android-asynctask,Android,Android Asynctask,我对编程很陌生。我有一个程序,它有很多方法,它们彼此连续运行。我的应用程序冻结,直到它完成计算。我想把所有的东西都放到AsyncTask中,但我很难理解它是如何工作的 到目前为止,这是一个单独的java文件 import android.os.AsyncTask; public class ConvertToStringToIntt extends AsyncTask<String, Void, Integer> { @Override protected Int

我对编程很陌生。我有一个程序,它有很多方法,它们彼此连续运行。我的应用程序冻结,直到它完成计算。我想把所有的东西都放到AsyncTask中,但我很难理解它是如何工作的

到目前为止,这是一个单独的java文件

import android.os.AsyncTask;

public class ConvertToStringToIntt extends AsyncTask<String, Void, Integer> {

    @Override
    protected Integer doInBackground(String... timeString) {
        String time = timeString;
        time = time.replace(":","");
        int value = -2;
        try {
            value = Integer.parseInt(time);
        } catch (NumberFormatException e) {
            Message.message(this, "String time could not be converted to int");
        }
        return value;
    }
}
导入android.os.AsyncTask;
公共类ConvertToString点扩展异步任务{
@凌驾
受保护整数doInBackground(字符串…时间字符串){
字符串时间=时间字符串;
时间=时间。替换(“:”,“”);
int值=-2;
试一试{
值=整数.parseInt(时间);
}捕获(数字格式){
Message.Message(此“字符串时间无法转换为int”);
}
返回值;
}
}
这个方法基本上接收一个时间字符串并将其作为int返回。但是我在
String time=timeString
中得到了一个错误

说:

需要不兼容的类型:找到java.lang.String: java.lang.String[]


我不知道那是什么意思。任何帮助都会很好,谢谢。

如果您确定只传递一个字符串,不管业务逻辑如何

public class ConvertToStringToIntt extends AsyncTask<String, Void, Integer> {

    @Override
    protected Integer doInBackground(String... timeString) {
        String time = timeString[0];
        time = time.replace(":","");
        int value = -2;
        try {
            value = Integer.parseInt(time);
        } catch (NumberFormatException e) {
            Message.message(this, "String time could not be converted to int");
        }
        return value;
    }
}
公共类converttostringpointt扩展异步任务{
@凌驾
受保护整数doInBackground(字符串…时间字符串){
字符串时间=时间字符串[0];
时间=时间。替换(“:”,“”);
int值=-2;
试一试{
值=整数.parseInt(时间);
}捕获(数字格式){
Message.Message(此“字符串时间无法转换为int”);
}
返回值;
}
}

timeString是一个字符串数组,如果在执行AsyncTask时发送1个字符串,则使用String time=timeString[0];有关
字符串…
语法的解释,请参阅。我知道它是在后台设置数组,这很有效。int值将始终返回一个简单的int。我当前访问MainActivity中的AsyncTask,如何将该int值放入MainActivity中的变量中。ConvertToString ConvertToString=新ConvertToString();int i=convertToString.execute(getTimeString);不起作用。