如何在一系列图像中自动播放视频?

时间:2014-01-30 05:07:50

标签: android android-video-player

我想在显示所有图像后播放视频。下面给出了我每10秒一个接一个地播放图像的代码。我想用这个代码实现一个视频也播放意味着我有5个图像,每10秒一个接一个播放,当5个图像显示然后自动播放视频并在视频图像完成后再次播放。所有图像和视频都在循环中播放。

以下是我的代码,

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MotionEvent;
import android.view.WindowManager;
import android.widget.ViewFlipper;
 public class MainActivity extends Activity
 {
    private ViewFlipper myviewflipper;
    private float initialXpoint;
    @Override
    protected void onCreate(Bundle savedInstanceState)
 {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    myviewflipper = (ViewFlipper) findViewById(R.id.myflipper);
    myviewflipper.setAutoStart(true);
    myviewflipper.setFlipInterval(10000);
    myviewflipper.startFlipping();
   }
   @Override
   public boolean onTouchEvent(MotionEvent touchevent)
   {
      switch (touchevent.getAction())
     {
        case MotionEvent.ACTION_DOWN:
        initialXpoint = touchevent.getX();
        break;
        case MotionEvent.ACTION_UP:
        float finalX = touchevent.getX();
        if (initialXpoint > finalX)
           {
              if (myviewflipper.getDisplayedChild() == 1)
               break;
               myviewflipper.showNext();
           }
        else
          {
               if (myviewflipper.getDisplayedChild() == 0)
              break;
              myviewflipper.showPrevious();
          }
          break;
      }
       return false;
    }
 }

my xml fil -

      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
       android:layout_height="fill_parent"
       android:orientation="vertical">
       <ViewFlipper
     android:id="@+id/myflipper"
     android:layout_width="fill_parent"
     android:layout_height="fill_parent"
    android:gravity="center" >
    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/a"/>
    <ImageView
        android:id="@+id/imageView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/b" />
    <ImageView
        android:id="@+id/imageView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/c" />
    <ImageView
        android:id="@+id/imageView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/d" />
    <ImageView
        android:id="@+id/imageView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/e" />

      </ViewFlipper>
     </LinearLayout>

1 个答案:

答案 0 :(得分:1)

如果图像是静态的,则可以使用视图切换器或ViewFlipper,这意味着它们是以xml格式预定义的。

ViewFlipper Sample

或者您可以使用线程和处理程序模式

想法:在xml中获取ImageView,获取图像数组,首先将第0个图像设置为ImageView,10秒后设置第1个......,您可以添加图像以及Android中的简单动画。

Sample

SO question