ProgressDialog not showing up in activity

后端 未结 4 621
天涯浪人
天涯浪人 2020-12-20 01:33

I am trying to include a ProgressDialog in my application. But it is not showing up.

Here\'s the code snippet where i use the ProgressDialog:

public          


        
4条回答
  •  隐瞒了意图╮
    2020-12-20 02:07

    I think your code is wrong in a sense that you do all in the UI thread. You have to put callsomefunction() into a background thread.

    public void runSomething()
    {
        showDialog(BACKGROUND_ID);
        Thread t = new Thread(new Runnable() 
        {                   
            public void run() 
            {
                //do something
                handler.post(finishThread);
            }
        });
    
        t.start();
        // The progress wheel will only show up once all code coming here has been executed
    }
    

    And as well

    protected Dialog onCreateDialog(int id)
    {
        if(progressDialog == null) progressDialog = new ProgressDialog(this);
        return progressDialog;
    }
    
    @Override
    protected void onPrepareDialog(int id, Dialog dialog)
    {
        if(id == BACKGROUND_ID) 
        {
            progressDialog.setIndeterminate(true);
            progressDialog.setCancelable(false);
            progressDialog.setMessage("running for long ...");
        }
    }
    
    Runnable finishThread = new Runnable()
    {       
        public void run() 
        {
    //long running
            if(progressDialog != null) progressDialog.dismiss();
        }
    };
    

提交回复
热议问题