为什么Android Studio中没有显示进度条?

3
我尝试在Android Studio中使用ProgressBar。我想要的是:当我单击MainActivity的按钮时,它将意图到一个名为“Progress”的新活动。 我的活动在这里: MainActivity.java:
Progress.java:
我的应用程序运行,但没有显示任何进度条运动。我该怎么做才能让进度条显示30秒?在此期间我什么也不做,只想看到一个进度条30秒钟。

2
请展示一些代码。 - Remario
我在我的问题中附上了图片,请@Caspain Caldion检查。 - suptagni
2
您展示了进度条,但是数值100太小了,您无法看到它的变化速度太快。 - Grzegorz
抱歉,我没有足够的声望来显示更多的图片。我该怎么办? - suptagni
这是进度条部分 @Caspain Caldion: <ProgressBar android:id="@+id/progress_bar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" /> - suptagni
显示剩余5条评论
2个回答

1

循环次数1000太小了,但是这段代码可以实现你想要的功能:

//Set visible progres bar
findViewById(R.id.progress_bar).setVisibility(View.VISIBLE);

        //Timer in your case 30 sek
        int timer = 30*1000;

        //create handler
        final Handler handler = new Handler();

        //set handler delayed                
        handler.postDelayed(new Runnable() {
            @Override
            public void run() { 

        //Hidden progress bar
        findViewById(R.id.progress_bar).setVisibility(View.INVISIBLE);

        //your toast
        Toast.makeText(this,"your msg",Toast.LENGTH_LONG).show();

        //start new activity
        startActivity(your intent)
          }
        }, timer);
    }

哇!它可以工作 :) 请问我如何在时间到后显示一个toast消息并意图到新的活动?@Grzegorz - suptagni
非常感谢。这真的很有帮助 :) @Grzegorz - suptagni

1

mPrograssStatus会在很短的时间内增加到100。您需要等待,例如将以下内容添加到您的循环代码中:

SystemClock.sleep(300);

括号里的数值是系统等待的毫秒数,对于您的情况是300,即30秒。您还需要导入库:

import android.os.SystemClock;

感谢@Michał Tartanus的回复。我已经找到了解决方案 :) - suptagni

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接