如何使用进度条实现启动画面? - android

时间:2012-06-14 20:32:30

标签: java android timer progress-bar splash-screen

我在启动时有一个启动画面。使用以下编码

public class Splash extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.splash);
    Thread logoTimer = new Thread(){
        public void run(){
            try{
                int logoTimer = 0;
                while (logoTimer<5000){
                    sleep(100);
                    logoTimer=logoTimer+100;
                     }
                startActivity(new Intent("com.package.MAIN"));
        } catch (InterruptedException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
            finally{
                finish();
            }
        }
    };
    logoTimer.start();
}}

现在我只想在屏幕底部的上面的启动活动中添加一个水平进度条 .. 以便同时显示启动画面,进度条应该加载当它完成时,应该出现下一个活动。

在进度条上搜索了几个例子但是却无法做我想做的事情。进度条有很多带有对话框的例子。但在这里我不想要任何对话框。我只需要在启动画面上使用简单的水平进度条

有人可以帮我解决所需的编码和内容吗?请! :)

2 个答案:

答案 0 :(得分:7)

在这里,您编写了一个教程,如何使用进度条创建SplashScreen:

http://blog.blundellapps.com/tut-splashscreen-with-progress-bar/

基本上,不是你的线程启动ASyncTask,你将progressSpinner的引用传递给ASyncTask,这将在线程下载资源(或任何你想做的事情)时更新它

答案 1 :(得分:0)

此XML示例将创建一个水平ProgressBar:

<ProgressBar
    android:id="@+id/progress_bar"
    style="@android:style/Widget.ProgressBar.Horizontal"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:progress="0" />