Экран-заставка Android Video или анимированные картинки (исчезают)
2 ответа
Решение
Добавьте videoview в ваш XML как:
<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(); } } });
*** Вы должны использовать переключатель просмотра видео на заставке, с видео и изображением, для случая, когда видео не поддерживается.
Если вы используете MediaPlayer
с VideoView
Вы можете начать свою деятельность в OnCompletionListener
.После завершения воспроизведения видео начните следующее действие.
mediaplayer.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
try {
//intent for start new activity
} catch (Exception e) {
e.printStackTrace();
}
}
});