Image をダウンロードする AsyncTask があり、進行状況ダイアログも表示されます。asynctask は非常に正常に実行され、イメージのダウンロードの進行状況にも値が正しく表示されます。ダウンロードの値を doInBackground() に記録して確認し、publishProgress() を使用しました。しかし、この publishProgress はバーの進行状況ダイアログを増やしません。
以下は私が使用しているコードです。
public class SingleMenuItemActivity extends Activity {
public static final String KEY_TITLE = "title";
public static final String KEY_LINK = "link";
public static final String KEY_DATE = "date";
public static final String TAG = "SingleMenuItemActivity";
private ProgressDialog pDialog;
// Progress dialog type (0 - for Horizontal progress bar)
public static final int PROGRESS_BAR_TYPE = 0;
//public static ImageDownloadTask imTask;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.single_list_item);
    // getting intent data
    Intent in = getIntent();
    // Get XML values from previous intent
    String name = in.getStringExtra(KEY_TITLE);
    String pLink = in.getStringExtra(KEY_LINK);
    String pDate = in.getStringExtra(KEY_DATE);
    // Displaying all values on the screen
    TextView lblTitle = (TextView) findViewById(R.id.title_label);
    TextView lblDate = (TextView) findViewById(R.id.publish_label);
    lblTitle.setText(name);
    lblDate.setText(pDate);
// Set Image
    try {
        URL url = new URL(pLink);
        new ImageDownloadTask().execute(url);
    } catch (IOException e) {
        e.printStackTrace();
    }
}
/**
 * Showing Dialog
 * */
@Override
protected Dialog onCreateDialog(int id) {
    switch (id) {
    case PROGRESS_BAR_TYPE: // we set this to 0
        pDialog = new ProgressDialog(this);
        pDialog.setMessage("Downloading image. Please wait...");
        pDialog.setIndeterminate(false);
        pDialog.setMax(100);
        pDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
        pDialog.setCancelable(false);
        pDialog.show();
        return pDialog;
    default:
        return null;
    }
}
class ImageDownloadTask extends AsyncTask<URL, Float, String> {
    public static final String TAG = "ImageDownloadTask";        
     ImageView imageView = (ImageView) findViewById(R.id.single_list_imageview);
     int count;
    @Override
    protected String doInBackground(URL... params) {
         try {
                URL url = params[0];
                URLConnection conection = url.openConnection();
                conection.connect();
                // this will be useful so that you can show a tipical 0-100% progress bar
                int lenghtOfFile = conection.getContentLength();
                // download the file
                InputStream input = new BufferedInputStream(url.openStream(), 8192);
                // Output stream
                OutputStream output = new FileOutputStream("/sdcard/downloadedfile.jpg");
                byte data[] = new byte[1024];
                long total = 0;
                while ((count = input.read(data)) != -1) {
                    total += count;
                    float pValue = (float)((total*100)/lenghtOfFile);
                    Log.d(TAG,"Download so far : "+pValue);
                    // publishing the progress....
                    // After this onProgressUpdate will be called
                    publishProgress(pValue);
                    // writing data to file
                    output.write(data, 0, count);
                }
                // flushing output
                output.flush();
                // closing streams
                output.close();
                input.close();
            } catch (Exception e) {
                Log.e("Error: ", e.getMessage());
            }
        return null;
    }
    @Override
    protected void onPostExecute(String result) {
        Log.d(TAG,"Bitmap download complete");
        dismissDialog(PROGRESS_BAR_TYPE);
        // Displaying downloaded image into image view
        // Reading image path from sdcard
        String imagePath = Environment.getExternalStorageDirectory().toString() + "/downloadedfile.jpg";
        // setting downloaded into image view
        imageView.setImageDrawable(Drawable.createFromPath(imagePath));
    }
    @Override
    protected void onCancelled(){
        Log.d(TAG,"Progress Dialog was Cancelled");
        pDialog.dismiss();
    }
    @Override
    protected void onPreExecute() {
         super.onPreExecute();
        // Things to be done before execution of long running operation. For
        // example showing ProgessDialog
         showDialog(PROGRESS_BAR_TYPE);
    }
    protected void onProgressUpdate(Integer... values) {
        //super.onProgressUpdate(values);
        Log.d(TAG,"values"+values[0]);
//          incrementProgressBy(values[0]);
        //pDialog.setProgress(values[0]);
        setProgress(values[0]);
        }
    }
}
どこが間違っているのか教えてください。
ありがとうございました、