Java asynctask中的progressbar未进入ProgressUpdate
我的asynctask未进入onProgressUpdate。为什么?我将在asynctask中创建进度条。下面是我使用进度条显示上传图像的代码Java asynctask中的progressbar未进入ProgressUpdate,java,android,Java,Android,我的asynctask未进入onProgressUpdate。为什么?我将在asynctask中创建进度条。下面是我使用进度条显示上传图像的代码 public static class RegisterDataEngineForPost extends AsyncTask<MultipartEntity, integer, String>{ ProgressBar ProgressBarUpload; public void setmCurrentPhotoP
public static class RegisterDataEngineForPost extends AsyncTask<MultipartEntity, integer, String>{
ProgressBar ProgressBarUpload;
public void setmCurrentPhotoPath(ProgressBarUploadb) {
ProgressBarUpload = ProgressBarUploadb;
}
@Override
protected void onProgressUpdate(integer... values) {
}
@Override
protected void onPreExecute() {
ProgressBarUpload.setProgress(0);
}
@Override
protected String doInBackground(MultipartEntity... params) {
}
@Override
protected void onPostExecute(String result) {
}
}
}
公共静态类RegisterDataEngineForPost扩展异步任务{
ProgressBar ProgressBarUpload;
公共无效设置当前光路(ProgressBarUploadb){
ProgressBarUpload=ProgressBarUploadb;
}
@凌驾
受保护的void onProgressUpdate(整型…值){
}
@凌驾
受保护的void onPreExecute(){
ProgressBarUpload.setProgress(0);
}
@凌驾
受保护的字符串doInBackground(多端口…参数){
}
@凌驾
受保护的void onPostExecute(字符串结果){
}
}
}
使用
手动操作,Android不会无中生有地知道您的进度,您需要自己确定。使用
手动操作,Android不会无中生有地知道你的进度,你需要自己确定。你必须调用publishProgress(progress\u value)来更新进度
public static class RegisterDataEngineForPost extends AsyncTask<MultipartEntity, integer, String>{
ProgressBar ProgressBarUpload;
public void setmCurrentPhotoPath(ProgressBarUploadb) {
ProgressBarUpload = ProgressBarUploadb;
}
@Override
protected void onProgressUpdate(integer... values) {
}
@Override
protected void onPreExecute() {
ProgressBarUpload.setProgress(0);
}
@Override
protected String doInBackground(MultipartEntity... params) {
//do some task and update the progress
publishProgress(progress_value);
}
@Override
protected void onPostExecute(String result) {
}
}
}
公共静态类RegisterDataEngineForPost扩展异步任务{
ProgressBar ProgressBarUpload;
公共无效设置当前光路(ProgressBarUploadb){
ProgressBarUpload=ProgressBarUploadb;
}
@凌驾
受保护的void onProgressUpdate(整型…值){
}
@凌驾
受保护的void onPreExecute(){
ProgressBarUpload.setProgress(0);
}
@凌驾
受保护的字符串doInBackground(多端口…参数){
//完成一些任务并更新进度
出版进度(进度值);
}
@凌驾
受保护的void onPostExecute(字符串结果){
}
}
}
您必须调用publishProgress(progress\u value)来更新这样的进度
public static class RegisterDataEngineForPost extends AsyncTask<MultipartEntity, integer, String>{
ProgressBar ProgressBarUpload;
public void setmCurrentPhotoPath(ProgressBarUploadb) {
ProgressBarUpload = ProgressBarUploadb;
}
@Override
protected void onProgressUpdate(integer... values) {
}
@Override
protected void onPreExecute() {
ProgressBarUpload.setProgress(0);
}
@Override
protected String doInBackground(MultipartEntity... params) {
//do some task and update the progress
publishProgress(progress_value);
}
@Override
protected void onPostExecute(String result) {
}
}
}
公共静态类RegisterDataEngineForPost扩展异步任务{
ProgressBar ProgressBarUpload;
公共无效设置当前光路(ProgressBarUploadb){
ProgressBarUpload=ProgressBarUploadb;
}
@凌驾
受保护的void onProgressUpdate(整型…值){
}
@凌驾
受保护的void onPreExecute(){
ProgressBarUpload.setProgress(0);
}
@凌驾
受保护的字符串doInBackground(多端口…参数){
//完成一些任务并更新进度
出版进度(进度值);
}
@凌驾
受保护的void onPostExecute(字符串结果){
}
}
}
您是否在doinbackground()
中使用了publishProgress()
方法?不,我没有使用。如何做到这一点?您必须首先定义进度条的限制,并在doInBackGround()
中定期调用publishProgress()
。您可以参考的简单示例是否在doinbackground()
中使用了publishProgress()
方法?不,我没有使用。如何做到这一点?您必须首先定义进度条的限制,并在doInBackGround()
中定期调用publishProgress()
。您可以参考的简单示例