「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>