使用进度条

时间:2011-03-29 10:08:39

标签: android progress-bar

我试图在我的应用程序中使用进度条 - 只需单击一个按钮,就会显示一个带有进度条小部件的新布局 - 我尝试使用代码

@Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        switch(v.getId()){

                 case R.id.Button:
            Intent intent = new Intent(Welcome.this, progbar.class);         
            startActivity(intent);
            break;
        }


public class progbar extends Activity{

    private ProgressBar prgbar;
    private int prgStatus = 0;
    private Handler mHandler = new Handler();

     /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        setContentView(R.layout.lProgbar);

        prgbar = (ProgressBar) findViewById(R.id.ReceiveUAI_prg);

     // Start lengthy operation in a background thread
        new Thread(new Runnable() {
            public void run() {
                while (prgStatus < 100) {
                    prgStatus += 2;

                    // Update the progress bar
                    mHandler.post(new Runnable() {
                        public void run() {
                            prgbar.setProgress(prgStatus);
                        }
                    });
                }
            }
        }).start();
    }
}

但点击按钮后我的应用程序终止。

2 个答案:

答案 0 :(得分:0)

在设计时在R.layout.lProgbar中放置一个进度条。完成后,请调用progressbar.GONE,它将删除进度条。

答案 1 :(得分:0)

避免使用该帖子,同时您也没有延迟更新进度条状态。所以它很快就会结束......这个

 while (prgStatus < 100) {
                prgStatus += 2;

                // Update the progress bar
                mHandler.postDelayed(new Runnable() {
                    public void run() {
                        prgbar.setProgress(prgStatus);
                    }
                },200);