0

私は「新鮮な」Android 開発者で、水平の ProgressBar を試しました。少し問題があります。進行が途中で止まり、バーの終わりまで続きません。

助けてください。

これは私のコードです

    progress=0;
mProgress = (ProgressBar) findViewById(R.id.progressBar1);   
mProgress.setMax(200);


// Start lengthy operation in a background thread         
new Thread(new Runnable() 
{             
    public void run() 
    {                 

        while (mProgressStatus < 100) 
        {                     

            mProgressStatus = doWork();                     
            // Update the progress bar                     
            mHandler.post(new Runnable() 
            {                         
                public void run() 
                {                             
                    mProgress.incrementProgressBy(20);
                    mProgress.setProgress(mProgressStatus);                         
                }                     
            });                 
        }

        // Cache la progressBar 
        mHandler.post(new Runnable() 
        {

            @Override
            public void run() 
            {
                mProgress.setVisibility(4);
    }
    });

    }
    //---------------------------------Work to do-----------------------
    private int doWork()
    {
        try{
            Thread.sleep(50);//5 secondes
        }catch(InterruptedException e)
        {
            e.printStackTrace();
        }
        return ++progress;
    }
    //------------------------------------------------------------------

}).start();
    }
4

1 に答える 1

0

プログレス バーの最大値を 200 に設定します。

mProgress.setMax(200);

コードの後半で、100 (半分が満たされている) になったときに停止します。最大値を 100 に設定するか、200 まで実行し続けます。

于 2013-04-30T13:25:41.730 に答える