package com.yqritc.scalablevideoview.sample; import com.yqritc.scalablevideoview.ScalableType; import com.yqritc.scalablevideoview.ScalableVideoView; import android.media.MediaPlayer; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.Menu; import android.view.MenuItem; import android.view.View; import java.io.IOException; public class MainActivity extends AppCompatActivity implements View.OnClickListener { private ScalableVideoView mVideoView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mVideoView = (ScalableVideoView) findViewById(R.id.video_view); findViewById(R.id.btn_next).setOnClickListener(this); try { mVideoView.setRawData(R.raw.landscape_sample); mVideoView.setVolume(0, 0); mVideoView.setLooping(true); mVideoView.prepare(new MediaPlayer.OnPreparedListener() { @Override public void onPrepared(MediaPlayer mp) { mVideoView.start(); } }); } catch (IOException ioe) { //ignore } } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.menu_main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { ScalableType scalableType; switch (item.getItemId()) { case R.id.scale_none: scalableType = ScalableType.NONE; break; case R.id.scale_fit_xy: scalableType = ScalableType.FIT_XY; break; case R.id.scale_fit_start: scalableType = ScalableType.FIT_START; break; case R.id.scale_fit_center: scalableType = ScalableType.FIT_CENTER; break; case R.id.scale_fit_end: scalableType = ScalableType.FIT_END; break; case R.id.scale_left_top: scalableType = ScalableType.LEFT_TOP; break; case R.id.scale_left_center: scalableType = ScalableType.LEFT_CENTER; break; case R.id.scale_left_bottom: scalableType = ScalableType.LEFT_BOTTOM; break; case R.id.scale_center_top: scalableType = ScalableType.CENTER_TOP; break; case R.id.scale_center: scalableType = ScalableType.CENTER; break; case R.id.scale_center_bottom: scalableType = ScalableType.CENTER_BOTTOM; break; case R.id.scale_right_top: scalableType = ScalableType.RIGHT_TOP; break; case R.id.scale_right_center: scalableType = ScalableType.RIGHT_CENTER; break; case R.id.scale_right_bottom: scalableType = ScalableType.RIGHT_BOTTOM; break; case R.id.scale_left_top_crop: scalableType = ScalableType.LEFT_TOP_CROP; break; case R.id.scale_left_center_crop: scalableType = ScalableType.LEFT_CENTER_CROP; break; case R.id.scale_left_bottom_crop: scalableType = ScalableType.LEFT_BOTTOM_CROP; break; case R.id.scale_center_top_crop: scalableType = ScalableType.CENTER_TOP_CROP; break; case R.id.scale_center_crop: scalableType = ScalableType.CENTER_CROP; break; case R.id.scale_center_bottom_crop: scalableType = ScalableType.CENTER_BOTTOM_CROP; break; case R.id.scale_right_top_crop: scalableType = ScalableType.RIGHT_TOP_CROP; break; case R.id.scale_right_center_crop: scalableType = ScalableType.RIGHT_CENTER_CROP; break; case R.id.scale_right_bottom_crop: scalableType = ScalableType.RIGHT_BOTTOM_CROP; break; case R.id.scale_start_inside: scalableType = ScalableType.START_INSIDE; break; case R.id.scale_center_inside: scalableType = ScalableType.CENTER_INSIDE; break; case R.id.scale_end_inside: scalableType = ScalableType.END_INSIDE; break; default: return super.onOptionsItemSelected(item); } mVideoView.setScalableType(scalableType); mVideoView.invalidate(); return true; } @Override public void onClick(View v) { switch (v.getId()) { case R.id.btn_next: SampleActivity.startActivity(this); break; default: break; } } }