android - AsyncTask 更新在 android 的其他类中调用的 ui 计数器
问题描述
我需要将文件上传计数动态更新到在其他类方法中调用的 Ui 进度条中。AsyncTask doInBackground() 和 myClass.uploadFiles() 之间如何通信。请帮我
这是活动
public class MyActivity extends AppCompatActivity {
private ProgressDialog dialog = null;
String status;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_file);
CounteTask task = new CounteTask();
task.execute();
}
private class CounteTask extends AsyncTask<String, Integer, Void> {
@Override
protected Void doInBackground(String... params) {
try {
status = myClass.uploadFiles(MyActivity.this);
} catch (Exception e) {
dialog.dismiss();
}
return null;
}
@Override
protected void onPostExecute(Void resultGetlogin) {
dialog.dismiss();
}
protected void onPreExecute() {
dialog = ProgressDialog.show(Sync_Records.this, "", "Please wait, file count..");
}
protected void onProgressUpdate(Integer... values) {
}
}
}
MyClass.java 从这里需要更新 ui 线程。
public void MyClass{
public static String uploadFiles(Context context) {
for (count=0 ; count <= 10; count++) {
try {
upload(count); //need to show each count of file which is currently uploading
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
return status;
}
解决方案
推荐阅读
- asp.net-core - 正确的 ASP.NET Core 5 的 JWT nuget 包
- salesforce - 有没有办法在闪电模式弹出窗口中删除保存和取消
- python - 提取几个句子共有的 ngram
- python - 在 Python 中将 2 个 csv 文件与新行合并
- linux - 经常获取 - 连接到您的实例时出现问题(不是第一次设置)
- intellij-idea - 无法在 IntelliJ 上添加原型
- javascript - 如果为 null,则修改对象数组以替换为其他属性
- postgresql - Postgresql:使用具有唯一约束的相同ID“更新”到两个表中
- azure - Terraform 创建和引导 Azure 订阅
- c# - 如何获取excel临时文件的内容?