Java 如何从android中的执行函数获取返回值?
在android中,是否可以从execute中运行的函数中获取返回值 调用文件Java 如何从android中的执行函数获取返回值?,java,android,android-studio,Java,Android,Android Studio,在android中,是否可以从execute中运行的函数中获取返回值 调用文件 Connector connector = new Connector(); connector.execute("login", ipPop.getText().toString(), username.getText().toString(), password.getText().toString()); public class Connector extends AsyncTask&
Connector connector = new Connector();
connector.execute("login", ipPop.getText().toString(), username.getText().toString(), password.getText().toString());
public class Connector extends AsyncTask<String,Void,Void>{
@Override
protected Void doInBackground(String... voids) {
return false;
}
}
功能文件
Connector connector = new Connector();
connector.execute("login", ipPop.getText().toString(), username.getText().toString(), password.getText().toString());
public class Connector extends AsyncTask<String,Void,Void>{
@Override
protected Void doInBackground(String... voids) {
return false;
}
}
公共类连接器扩展异步任务{
@凌驾
受保护的Void doInBackground(字符串…Void){
返回false;
}
}
您正在Android中使用AsyncTask。当您的类扩展它时,您可以重写另外3个方法。在这里,您可以覆盖onPostExecute
,它与doInBackground返回的数据一起传递。因为onPostExecute在UI线程上运行,所以您可以从那个里更新UI,就像取消progressbar一样
@Override
protected void onPostExecute(String result) {
// "result" is data return from doInBackground method
// execution of result of Long time consuming operation
}
根据最新的android版本,AsyncTask已被弃用,请避免使用它 @303所以,我从你的话中了解到,使用替代方案应该更好,但是因为我时间不够,我认为我应该先使用AsyncTask,然后在项目维护期间切换到替代方案。请问,这是否意味着我可以使用
onPostExecute
将值返回到调用execute
的函数?好的。不,直接通过异步任务,您不能。你想要实现什么?您必须尝试登录,对吗?根据成功或失败启动AsyncTask后,请在onPostExecute
方法中处理UI更改。如果您使用AsyncTask进行API调用,我建议您使用库,如改型
。这会简单得多。哦。。。我明白了,我想我明白了,谢谢你的帮助