Hey Tope,

thank you for posting it.

I could not work on this till now but will start using your code. I
hope it will do what I need.
Thanks again for atleast getting me started on this thing.

Achie.

On Feb 1, 4:35 pm, Temitope Akinwande <takinwa...@gmail.com> wrote:
> So here is an example I created by following this 
> tutorialhttp://developer.android.com/intl/fr/guide/topics/ui/dialogs.html
> under the heading "Example ProgressDialog with a second thread"
>
> I modified it a little to load a webpage and use the progress of the
> page to display/dismiss the dialog
>
> package com.test.progressdialog;
>
> import android.app.Activity;
> import android.app.Dialog;
> import android.app.ProgressDialog;
> import android.os.Bundle;
> import android.os.Handler;
> import android.os.Message;
> import android.util.Log;
> import android.view.View;
> import android.view.View.OnClickListener;
> import android.webkit.WebView;
> import android.widget.Button;
>
> public class ProgressDialogTest extends Activity {
>     static final int PROGRESS_DIALOG = 0;
>     ProgressThread progressThread;
>     ProgressDialog progressDialog;
>
>     private Button mButton;
>     private WebView mWebView;
>
>     /** Called when the activity is first created. */
>     @Override
>     public void onCreate(Bundle savedInstanceState) {
>         super.onCreate(savedInstanceState);
>         setContentView(R.layout.main);
>
>         mButton = (Button) findViewById(R.id.progressDialog);
>         mWebView = (WebView) findViewById(R.id.content);
>         mButton.setOnClickListener(new OnClickListener() {
>             public void onClick(View v) {
>                 mButton.setVisibility(View.GONE);
>                 mWebView.loadUrl("http://en.m.wikipedia.org/wiki/::Home";);
>                 showDialog(PROGRESS_DIALOG);
>             }
>         });
>     }
>
>         protected Dialog onCreateDialog(int id) {
>             switch(id) {
>                 case PROGRESS_DIALOG:
>                     progressDialog = new
> ProgressDialog(ProgressDialogTest.this);
>                     progressDialog.setMessage("Loading...");
>                     progressDialog.setIndeterminate(true);
>                     progressThread = new ProgressThread(handler);
>                     progressThread.start();
>                     return progressDialog;
>                 default:
>                     return null;
>             }
>         }
>
>         // Define the Handler that receives messages from the thread
> and update the progress
>         final Handler handler = new Handler() {
>             public void handleMessage(Message msg) {
>                 int total = msg.getData().getInt("total");
>                 if (total >= 100) {
>                     dismissDialog(PROGRESS_DIALOG);
>                     progressThread.setState(ProgressThread.STATE_DONE);
>                 }
>             }
>         };
>
>         /** Nested class that performs progress calculations (counting) */
>         private class ProgressThread extends Thread {
>             Handler mHandler;
>             final static int STATE_DONE = 0;
>             final static int STATE_RUNNING = 1;
>             int mState;
>
>             ProgressThread(Handler h) {
>                 mHandler = h;
>             }
>
>             public void run() {
>                 mState = STATE_RUNNING;
>                 //total = 0;
>                 while (mState == STATE_RUNNING) {
>                     try {
>                         Thread.sleep(100);
>                     } catch (InterruptedException e) {
>                         Log.e("ERROR", "Thread Interrupted");
>                     }
>                     Message msg = mHandler.obtainMessage();
>                     Bundle b = new Bundle();
>                     b.putInt("total", mWebView.getProgress());
>                     msg.setData(b);
>                     mHandler.sendMessage(msg);
>                 }
>             }
>
>             /* sets the current state for the thread,
>              * used to stop the thread */
>             public void setState(int state) {
>                 mState = state;
>             }
>         }
>
> }
>
> Hopefully that helps you in your task.
>
> -Tope
>
> On Mon, Feb 1, 2010 at 1:05 PM, Achanta <krishna.acha...@gmail.com> wrote:
> > I saw that tutorial earlier and have also tried it.
>
> > Yes for now even a progress dialog in that way works for me.
> > I know i need to use getProgress but do not know how to send the
> > progress to the thread running the progress dialog.
>
> > Thanks again.
>
> > On Feb 1, 11:58 am, Temitope Akinwande <takinwa...@gmail.com> wrote:
> >> I found this tutorial
>
> >>http://www.helloandroid.com/tutorials/using-threads-and-progressdialog
>
> >> What you can try to do and see if it works is to create a new thread
> >> on button click so that when the page is loading, you can display an
> >> indeterminate progress dialog while you are waiting on the page to be
> >> done loading using Webview's getProgress() 
> >> methodhttp://developer.android.com/intl/fr/reference/android/webkit/WebView...()
> >> .
>
> >> Create a handler so that when the page is done loading, you can
> >> dismiss the dialog.
> >> Hope that helps you(see the tutorial).
>
> >> On Mon, Feb 1, 2010 at 11:41 AM, Achanta <krishna.acha...@gmail.com> wrote:
> >> > Thank you for the reply,
>
> >> >> as I'm sure this question has been asked before.
> >> > I was also sure that it has been asked before because its a common
> >> > task, But searching the web or this group did not give me the
> >> > appropriate results.
>
> >> >> From what I gather, you'll have to start a thread using AsyncTask and
> >> >> that way you can show your progress dialog.
> >> > I may have to but I am not sure. Here I am loading a webpage and this
> >> > is happening in the same thread or it appears to be. I can also get
> >> > the progress of it from the WebView. I am not doing any background
> >> > activity like calculations or downloading stuff, but loading the page
> >> > which is on the same thread. So I am a little lost on how to get this
> >> > done.
>
> >> > Thanks again.
>
> >> > On Feb 1, 11:12 am, Temitope Akinwande <takinwa...@gmail.com> wrote:
> >> >> Hi,
>
> >> >> You can check this 
> >> >> outhttp://developer.android.com/intl/fr/guide/topics/ui/dialogs.html#Pro...
>
> >> >> From what I gather, you'll have to start a thread using AsyncTask and
> >> >> that way you can show your progress dialog.
> >> >> A search of progress dialog and async task should yield more results
> >> >> as I'm sure this question has been asked before.
>
> >> >> -Tope
>
> >> >> On Mon, Feb 1, 2010 at 10:39 AM, Achanta <krishna.acha...@gmail.com> 
> >> >> wrote:
> >> >> > I have a search box and a web view in my activity.
>
> >> >> > I also have a search button which when someone clicks opens a the url
> >> >> > in the webview below the search box.
>
> >> >> > Everything is working fine except that it remains blank while the page
> >> >> > loads.
> >> >> > I want to show a loading message with a spinning icon/animation while
> >> >> > the page loads. [similar to one in the market app].
>
> >> >> > please let me know how to do it.
> >> >> > Thank you.
>
> >> >> > --
> >> >> > You received this message because you are subscribed to the Google
> >> >> > Groups "Android Developers" group.
> >> >> > To post to this group, send email to 
> >> >> > android-developers@googlegroups.com
> >> >> > To unsubscribe from this group, send email to
> >> >> > android-developers+unsubscr...@googlegroups.com
> >> >> > For more options, visit this group at
> >> >> >http://groups.google.com/group/android-developers?hl=en
>
> >> > --
> >> > You received this message because you are subscribed to the Google
> >> > Groups "Android Developers" group.
> >> > To post to this group, send email to android-developers@googlegroups.com
> >> > To unsubscribe from this group, send email to
> >> > android-developers+unsubscr...@googlegroups.com
> >> > For more options, visit this group at
> >> >http://groups.google.com/group/android-developers?hl=en
>
> > --
> > You received this message because you are subscribed to the Google
> > Groups "Android Developers" group.
> > To post to this group, send email to android-developers@googlegroups.com
> > To unsubscribe from this group, send email to
> > android-developers+unsubscr...@googlegroups.com
> > For more options, visit this group at
> >http://groups.google.com/group/android-developers?hl=en
>
>

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to