diff --git a/build.gradle b/build.gradle index e7036406..5808814f 100644 --- a/build.gradle +++ b/build.gradle @@ -24,7 +24,7 @@ task clean(type: Delete) { } ext { - minSdkVersion = 16 + minSdkVersion = 14 targetSdkVersion = 23 compileSdkVersion = 25 buildToolsVersion = '25.0.2' diff --git a/magic_player/src/main/java/com/devlin_n/magic_player/controller/IjkMediaController.java b/magic_player/src/main/java/com/devlin_n/magic_player/controller/IjkMediaController.java index 0f3bf017..5665435c 100644 --- a/magic_player/src/main/java/com/devlin_n/magic_player/controller/IjkMediaController.java +++ b/magic_player/src/main/java/com/devlin_n/magic_player/controller/IjkMediaController.java @@ -300,7 +300,7 @@ public void show() { public void reset() { currTime.setText(stringForTime(mediaPlayer.getDuration())); playButton.setSelected(true); - show(0); + show(); } @Override diff --git a/magic_player/src/main/java/com/devlin_n/magic_player/player/IjkVideoView.java b/magic_player/src/main/java/com/devlin_n/magic_player/player/IjkVideoView.java index 1d6c0adc..29ec4be9 100644 --- a/magic_player/src/main/java/com/devlin_n/magic_player/player/IjkVideoView.java +++ b/magic_player/src/main/java/com/devlin_n/magic_player/player/IjkVideoView.java @@ -17,7 +17,6 @@ import android.view.SurfaceHolder; import android.view.View; import android.view.ViewGroup; -import android.view.ViewTreeObserver; import android.view.WindowManager; import android.widget.FrameLayout; import android.widget.ProgressBar; @@ -34,7 +33,6 @@ import com.devlin_n.magic_player.util.NetworkUtil; import com.devlin_n.magic_player.util.WindowUtil; import com.devlin_n.magic_player.widget.MagicSurfaceView; -import com.devlin_n.magic_player.widget.MagicTextureView; import com.devlin_n.magic_player.widget.StatusView; import java.io.File; @@ -58,7 +56,6 @@ public class IjkVideoView extends FrameLayout implements IjkMediaController.Medi private BaseMediaController mMediaController;//控制器 private boolean isControllerAdded;//师傅添加控制器 private MagicSurfaceView surfaceView; - private MagicTextureView textureView; private RelativeLayout surfaceContainer; private FrameLayout controllerContainer; private StatusView statusView;//显示错误信息的一个view @@ -133,17 +130,18 @@ private void initView() { bufferProgress = (ProgressBar) videoView.findViewById(R.id.buffering); surfaceContainer = (RelativeLayout) videoView.findViewById(R.id.surface_container); controllerContainer = (FrameLayout) videoView.findViewById(R.id.controller_container); - //获取播放器竖屏时的原始宽高 - getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { - @Override - public void onGlobalLayout() { - originalWidth = getWidth(); - originalHeight = getHeight(); - if (originalWidth != -1 && originalHeight != -1) { - getViewTreeObserver().removeOnGlobalLayoutListener(this); - } - } - }); + } + + /** + * 重写onWindowFocusChanged方法获取控件原始宽高 + */ + @Override + public void onWindowFocusChanged(boolean hasFocus) { + super.onWindowFocusChanged(hasFocus); + if (hasFocus && originalWidth == 0 && originalHeight == 0) { + originalWidth = getWidth(); + originalHeight = getHeight(); + } } /**