我需要显示一个启动画面,其中有两个正在运行的组件,一个正在加载图像,另一个是进度条。
可以轻松显示进度条并加载图片,但我不想使用 .gif 图片。
我们如何实现这一目标?
这是短片。
答案 0 :(得分:1)
如果要显示自定义进度,可以使用图像并使用<animated-rotate>
在drawable文件夹中创建和xml,
<强> custom_progrress_bar.xml 强>
<?xml version="1.0" encoding="utf-8"?>
<animated-rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:drawable="@drawable/progres_image"
android:pivotX="50%"
android:pivotY="50%" />
然后将其添加到布局中的ProgressBar中,
<ProgressBar
android:id="@+id/video_progress_bar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:indeterminateDrawable="@drawable/custom_progrress_bar" />
答案 1 :(得分:0)
您可以使用以下代码, 这里 loading imageview是您在上面显示的GIF图像。 loadingText 是TextView“正在加载...”,如上所示。
相应地管理线程中 ProgressBar 的进度标记,正如我在代码的最后一行中提到的那样..
ImageView loading = (ImageView) findViewById(R.id.loading);
ProgressBar loadingProgress = (ProgressBar) findViewById(R.id.loadingProgress);
TextView loadingText = (TextView) findViewById(R.id.loadingText);
/***
* Starting Animation Progress bar
*/
Animation anim = AnimationUtils.loadAnimation(this, R.anim.looprotate);
anim.setRepeatCount(-1);
anim.setRepeatMode(Animation.RESTART);
loading.startAnimation(anim);
loading.setVisibility(View.VISIBLE);
loadingProgress.setVisibility(View.VISIBLE);
loadingProgress.setProgress(10);
loadingText.setVisibility(View.VISIBLE);
loadingText.setText("Connecting");
loadingProgress.setProgress(10);
to
loadingProgress.setProgress(100);
在res:
中的Anim文件夹中创建 anim.xml<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:repeatCount="infinite"
android:repeatMode="restart"
android:duration="1000"
android:fromDegrees="0"
android:pivotX="50%"
android:pivotY="50%"
android:toDegrees="360" >
</rotate>