facebook twitter hatena line email

「Android/VideoView/イベント」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(ページの作成:「 ==動画プレイヤーサンプル(イベント)== すぐに再生される import android.media.MediaPlayer; import android.support.v7.app.AppCompatActivity; im...」)
 
(動画プレイヤーサンプル(イベント))
行20: 行20:
 
         FrameLayout layout = (FrameLayout)findViewById(R.id.videoView);
 
         FrameLayout layout = (FrameLayout)findViewById(R.id.videoView);
 
         layout.addView(mVideoView, layoutParams);
 
         layout.addView(mVideoView, layoutParams);
 +
        // タッチイベント
 +
        mVideoView.setOnTouchListener(new OnTouchListener() {
 +
            @Override
 +
            public boolean onTouch(View arg0, MotionEvent arg1) {
 +
                log.i(TAG, "onTouch");
 +
            }
 +
        });
 +
        // 最後まで再生
 +
        videoView.setOnCompletionListener(new OnCompletionListener() {
 +
            @Override
 +
            public void onCompletion(MediaPlayer mp) {
 +
                log.i(TAG, "onCompletion");
 +
            }
 +
        });
 +
        // 再生準備完了
 
         mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
 
         mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
 
             @Override
 
             @Override
 
             public void onPrepared(MediaPlayer mp) {
 
             public void onPrepared(MediaPlayer mp) {
 +
                log.i(TAG, "onPrepared");
 
                 mVideoView.start();
 
                 mVideoView.start();
 +
            }
 +
        });
 +
        // エラーイベント
 +
        videoView.setOnErrorListener(new OnErrorListener() {
 +
            @Override
 +
            public boolean onError(MediaPlayer media, int what, int extra) {
 +
                log.i(TAG, "onError");
 
             }
 
             }
 
         });
 
         });

2018年10月25日 (木) 10:38時点における版

動画プレイヤーサンプル(イベント)

すぐに再生される

import android.media.MediaPlayer;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Gravity;
import android.view.ViewGroup;
import android.widget.FrameLayout;
import android.widget.VideoView;
public class MainActivity extends AppCompatActivity {
   private VideoView mVideoView;
   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main);
       mVideoView = new VideoView(this);
       FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
       layoutParams.gravity = Gravity.CENTER;
       FrameLayout layout = (FrameLayout)findViewById(R.id.videoView);
       layout.addView(mVideoView, layoutParams);
       // タッチイベント
       mVideoView.setOnTouchListener(new OnTouchListener() {
           @Override
           public boolean onTouch(View arg0, MotionEvent arg1) {
               log.i(TAG, "onTouch");
           }
       });
       // 最後まで再生
       videoView.setOnCompletionListener(new OnCompletionListener() {
           @Override
           public void onCompletion(MediaPlayer mp) {
               log.i(TAG, "onCompletion");
           }
       });
       // 再生準備完了
       mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
           @Override
           public void onPrepared(MediaPlayer mp) {
               log.i(TAG, "onPrepared");
               mVideoView.start();
           }
       });
       // エラーイベント
       videoView.setOnErrorListener(new OnErrorListener() {
           @Override
           public boolean onError(MediaPlayer media, int what, int extra) {
               log.i(TAG, "onError");
           }
       });
       mVideoView.setVideoPath("~.mp4");
       mVideoView.start();
   }
}

res/layout/activity_main.xml

<FrameLayout android:id="@+id/videoView" android:layout_width="match_parent" android:layout_height="200dp"></FrameLayout>

参考:http://blog.livedoor.jp/sen_ritsu/archives/51350872.html