Android 视频启动画面或动画图片(淡入淡出)
Android Video Splash Screen or Animating Pictures (Fade)
如何创建启动画面 - 视频剪辑。就像这个一样。
我正在尝试制作这个欢迎屏幕。
它将一直循环,并在单击其中一个按钮时暂停。
当它播放带有 circleIndicator 滑动的 viewPager 时,它是自己的。
提前谢谢你。 :)
如果您将 MediaPlayer
与 VideoView
一起使用,您可以在 OnCompletionListener
中开始您的 Activity。当视频播放结束时,它会开始您的下一个 activity .
mediaplayer.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
try {
//intent for start new activity
} catch (Exception e) {
e.printStackTrace();
}
}
});
在您的 xml 中添加 videoview 为:
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center">
<VideoView
android:id="@+id/video_app_intro"
android:layout_width="200.0dip"
android:layout_height="200.0dip"
android:layerType="none" />
</FrameLayout>
在您的 activity.java 文件中添加:
private boolean videoCompleted = false;
// path of video in assets folder
StringBuilder stringBuilder = new StringBuilder().append("android.resource://").append(getPackageName()).append("/").append(R.raw.splash);
videoView.setVideoURI(Uri.parse(stringBuilder.toString()));
videoView.start();
videoView.setBackgroundColor(getResources().
getColor(android.R.color.white));
videoView.setZOrderOnTop(true);
videoView.setOnErrorListener(new MediaPlayer.OnErrorListener() {
@Override
public boolean onError(MediaPlayer mediaPlayer, int i, int i1) {
//wait for 3 seconds
new Thread(new Runnable() {
@Override
public void run() {
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}).start();
videoCompleted = true;
if (videoCompleted) {
goToNextScreen();
}
return false;
}
});
videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mediaPlayer) {
videoCompleted = true;
if (videoCompleted) {
goToNextScreen();
}
}
});
*** 对于不支持视频的情况,您应该在启动画面中使用视频和图像的视图切换器。
如何创建启动画面 - 视频剪辑。就像这个一样。 我正在尝试制作这个欢迎屏幕。
它将一直循环,并在单击其中一个按钮时暂停。 当它播放带有 circleIndicator 滑动的 viewPager 时,它是自己的。
提前谢谢你。 :)
如果您将 MediaPlayer
与 VideoView
一起使用,您可以在 OnCompletionListener
中开始您的 Activity。当视频播放结束时,它会开始您的下一个 activity .
mediaplayer.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
try {
//intent for start new activity
} catch (Exception e) {
e.printStackTrace();
}
}
});
在您的 xml 中添加 videoview 为:
<FrameLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center"> <VideoView android:id="@+id/video_app_intro" android:layout_width="200.0dip" android:layout_height="200.0dip" android:layerType="none" /> </FrameLayout>
在您的 activity.java 文件中添加:
private boolean videoCompleted = false; // path of video in assets folder StringBuilder stringBuilder = new StringBuilder().append("android.resource://").append(getPackageName()).append("/").append(R.raw.splash); videoView.setVideoURI(Uri.parse(stringBuilder.toString())); videoView.start(); videoView.setBackgroundColor(getResources(). getColor(android.R.color.white)); videoView.setZOrderOnTop(true); videoView.setOnErrorListener(new MediaPlayer.OnErrorListener() { @Override public boolean onError(MediaPlayer mediaPlayer, int i, int i1) { //wait for 3 seconds new Thread(new Runnable() { @Override public void run() { try { Thread.sleep(3000); } catch (InterruptedException e) { e.printStackTrace(); } } }).start(); videoCompleted = true; if (videoCompleted) { goToNextScreen(); } return false; } }); videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() { @Override public void onCompletion(MediaPlayer mediaPlayer) { videoCompleted = true; if (videoCompleted) { goToNextScreen(); } } });
*** 对于不支持视频的情况,您应该在启动画面中使用视频和图像的视图切换器。