title: Updating the Progress Bar in the list view
body: <p>I have a scenario, In my chat application I want to send photos, photos sending takes time. I have attached a progress bar( horizontal) to show the progress of sending the photo in my application. But I am unable to update the progress bar as it is the item of the custom list view.</p>
  
  <p>Here is my asynchtask to set the progress for Progress Bar but I am not able to get it.</p>
  
  <pre><code> class SendPhotoToFriend extends AsyncTask&lt;String, String, String&gt;{
  
          String receiver,path = "";
  
          public SendPhotoToFriend(String path,String receiver) {
              // TODO Auto-generated constructor stub
  
              this.path = path;
              this.receiver = receiver;
  
          }
  
  
          @Override
          protected String doInBackground(String... arg0) {
              // TODO Auto-generated method stub
  
              ServiceDiscoveryManager sdm = ServiceDiscoveryManager
              .getInstanceFor(connection);
  
              if (sdm == null)
                  sdm = new ServiceDiscoveryManager(connection);
  
              sdm.addFeature("http://jabber.org/protocol/disco#info");
              sdm.addFeature("jabber:iq:privacy");
  
              // Create the file transfer manager
              FileTransferManager manager = new FileTransferManager(
                      connection);
              FileTransferNegotiator.setServiceEnabled(connection, true);
  
              // Create the outgoing file transfer
              OutgoingFileTransfer transfer = manager
              .createOutgoingFileTransfer(receiver + "/Smack");
  
              System.out.println("Receiver of the file is "+receiver+"/smack");
  
              Log.i("transfere file", "outgoingfiletransfer is created");
  
              try {
                  long total = 0;
  
                  OutgoingFileTransfer.setResponseTimeout(30000);
                  transfer.sendFile(new File(path), "Description");
                  Log.i("transfere file", "sending file");
                  while (!transfer.isDone()) {
                      //Thread.sleep(1000);
  
                      total+=transfer.getProgress();
  
                      publishProgress(""+(int)((total*100)/transfer.getFileSize()));
  
                      Log.i("transfere file", "sending file status "
                              + transfer.getStatus() + "progress: "
                              + transfer.getProgress());
                      if (transfer.getStatus() == org.jivesoftware.smackx.filetransfer.FileTransfer.Status.error) {
                          Log.i("transfere file", "Errorrr isss: "
                                  + transfer.getError()+transfer.getPeer());
                          transfer.cancel();
                          break;
                      }
                  }
  
              } catch (XMPPException e) {
                  // TODO Auto-generated catch block
                  e.printStackTrace();
              }
  
              Log.i("transfere file", "sending file done");
  
              return null;
          }
  
          @Override
          protected void onProgressUpdate(final String... values) {
              // TODO Auto-generated method stub
              super.onProgressUpdate(values);
  
  
              LayoutInflater inflater = (LayoutInflater)getBaseContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
              final View view =inflater.inflate(R.layout.user_chat_send_chat, null); 
              ProgressBar p_Bar = (ProgressBar)view.findViewById(R.id.progress_bar_image);
              p_Bar.setProgress(Integer.parseInt(values[0]));
  
              customAdapter1.notifyDataSetChanged();
  
  
  
          }
  
          @Override
          protected void onPostExecute(String result) {
              // TODO Auto-generated method stub
              super.onPostExecute(result);
          }
      }
  </code></pre>
  
  <p>The progress Bar is the view of the custom list view, I want to update it at the run time.</p>
  
  <p>Thanks</p>