This is an automated email from the ASF dual-hosted git repository. kyork pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/incubator-weex.git
The following commit(s) were added to refs/heads/master by this push: new 1bdc3f7 * [android] Support attr controls (#1663) 1bdc3f7 is described below commit 1bdc3f7250572b9e619710a99485be0886e59f74 Author: 莫绪旻 <miomin...@foxmail.com> AuthorDate: Wed Oct 24 10:48:19 2018 +0800 * [android] Support attr controls (#1663) * * [android] Support attr controls * * [android] Rename controls attr --- .../main/java/com/taobao/weex/common/Constants.java | 1 + .../java/com/taobao/weex/ui/component/WXVideo.java | 10 +++++++++- .../java/com/taobao/weex/ui/view/WXVideoView.java | 20 ++++++++++++++++++-- 3 files changed, 28 insertions(+), 3 deletions(-) diff --git a/android/sdk/src/main/java/com/taobao/weex/common/Constants.java b/android/sdk/src/main/java/com/taobao/weex/common/Constants.java index 3b540ed..b311077 100644 --- a/android/sdk/src/main/java/com/taobao/weex/common/Constants.java +++ b/android/sdk/src/main/java/com/taobao/weex/common/Constants.java @@ -120,6 +120,7 @@ public class Constants { String AUTO_RECYCLE = "autoBitmapRecycle"; String SHOW_INDICATORS = "showIndicators"; String AUTO_PLAY = "autoPlay"; + String CONTROLS = "controls"; String SCROLL_DIRECTION = "scrollDirection"; String SCOPE = "scope"; String RECYCLE = "recycle"; diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXVideo.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXVideo.java index 22be688..44b0d26 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXVideo.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXVideo.java @@ -65,7 +65,6 @@ public class WXVideo extends WXComponent<FrameLayout> { @Override protected FrameLayout initComponentHostView(@NonNull Context context) { final WXVideoView.Wrapper video = new WXVideoView.Wrapper(context); - video.setOnErrorListener(new MediaPlayer.OnErrorListener() { @Override @@ -230,6 +229,15 @@ public class WXVideo extends WXComponent<FrameLayout> { } } + @WXComponentProp(name = Constants.Name.CONTROLS) + public void setControls(String controls) { + if (TextUtils.equals("controls", controls)) { + mWrapper.setControls(true); + } else if (TextUtils.equals("nocontrols", controls)) { + mWrapper.setControls(false); + } + } + private boolean mStopped; @WXComponentProp(name = Constants.Name.PLAY_STATUS) diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/view/WXVideoView.java b/android/sdk/src/main/java/com/taobao/weex/ui/view/WXVideoView.java index bbd5181..c88b253 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/view/WXVideoView.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/view/WXVideoView.java @@ -29,6 +29,7 @@ import android.support.annotation.Nullable; import android.util.AttributeSet; import android.view.Gravity; import android.view.MotionEvent; +import android.view.View; import android.view.ViewTreeObserver; import android.widget.FrameLayout; import android.widget.MediaController; @@ -106,7 +107,7 @@ public class WXVideoView extends VideoView implements WXGestureObservable { private MediaPlayer.OnErrorListener mOnErrorListener; private MediaPlayer.OnCompletionListener mOnCompletionListener; private WXVideoView.VideoPlayListener mVideoPlayListener; - + private boolean mControls = true; public Wrapper(Context context) { super(context); @@ -226,6 +227,17 @@ public class WXVideoView extends VideoView implements WXGestureObservable { } } + public void setControls(boolean controls) { + mControls = controls; + if (mVideoView != null && mMediaController != null) { + if (!mControls) { + mMediaController.setVisibility(View.GONE); + } else { + mMediaController.setVisibility(View.VISIBLE); + } + } + } + private synchronized void createVideoView() { if(mVideoView != null){ return; @@ -246,7 +258,11 @@ public class WXVideoView extends VideoView implements WXGestureObservable { controller.setAnchorView(this); video.setMediaController(controller); controller.setMediaPlayer(video); - + if (!mControls) { + controller.setVisibility(View.GONE); + } else { + controller.setVisibility(View.VISIBLE); + } mMediaController = controller; mVideoView = video;