Bladeren bron

Merge remote-tracking branch 'origin/dev' into dev

邓琴文 3 jaren geleden
bovenliggende
commit
1ab8317139
20 gewijzigde bestanden met toevoegingen van 218 en 93 verwijderingen
  1. 3 1
      BaseLibrary/src/main/AndroidManifest.xml
  2. 118 0
      BaseLibrary/src/main/java/com/cooleshow/base/ui/video/VideoPlayActivity.java
  3. 2 2
      BaseLibrary/src/main/java/com/cooleshow/base/utils/ErrorParse.java
  4. 2 2
      BaseLibrary/src/main/java/com/cooleshow/base/utils/Utils.java
  5. 19 7
      BaseLibrary/src/main/java/com/cooleshow/base/widgets/VideoThumbnailView.java
  6. 0 0
      BaseLibrary/src/main/res/drawable-xhdpi/icon_video_play.png
  7. BIN
      BaseLibrary/src/main/res/drawable-xhdpi/rc_picture_icon_back.png
  8. BIN
      BaseLibrary/src/main/res/drawable-xhdpi/rc_picture_icon_video_play.png
  9. 0 0
      BaseLibrary/src/main/res/drawable-xxhdpi/icon_video_play.png
  10. 47 0
      BaseLibrary/src/main/res/layout/activity_video_play_layout.xml
  11. 0 0
      BaseLibrary/src/main/res/layout/view_homework_video_thumbnail_layout.xml
  12. 16 10
      student/src/main/AndroidManifest.xml
  13. 2 8
      student/src/main/java/com/cooleshow/student/ui/course/PianoRoomCourseDetailActivity.java
  14. 2 2
      student/src/main/java/com/cooleshow/student/ui/course/SparringCourseDetailActivity.java
  15. 3 1
      teacher/src/main/AndroidManifest.xml
  16. 2 5
      teacher/src/main/java/com/cooleshow/teacher/ui/course/PianoRoomCourseHomeWorkActivity.java
  17. 2 2
      teacher/src/main/java/com/cooleshow/teacher/ui/course/SparringCourseDetailActivity.java
  18. 0 53
      teacher/src/main/java/com/cooleshow/teacher/widgets/HomeworkVideoThumbnailView.java
  19. BIN
      teacher/src/main/res/drawable-xhdpi/icon_video_play.png
  20. BIN
      teacher/src/main/res/drawable-xxhdpi/icon_video_play.png

+ 3 - 1
BaseLibrary/src/main/AndroidManifest.xml

@@ -13,6 +13,8 @@
         <service
             android:name=".service.PlayMusicService">
         </service>
-
+        <activity android:name=".ui.video.VideoPlayActivity"
+            android:configChanges="orientation|screenSize|keyboardHidden"
+            android:screenOrientation="portrait"/>
     </application>
 </manifest>

+ 118 - 0
BaseLibrary/src/main/java/com/cooleshow/base/ui/video/VideoPlayActivity.java

@@ -0,0 +1,118 @@
+package com.cooleshow.base.ui.video;
+
+import android.content.Context;
+import android.content.Intent;
+import android.media.MediaPlayer;
+import android.net.Uri;
+import android.text.TextUtils;
+import android.view.View;
+import android.widget.MediaController;
+
+import com.cooleshow.base.R;
+import com.cooleshow.base.databinding.ActivityVideoPlayLayoutBinding;
+import com.cooleshow.base.ui.activity.BaseActivity;
+import com.cooleshow.base.utils.ToastUtils;
+import com.cooleshow.base.utils.Utils;
+import com.umeng.socialize.utils.CommonUtil;
+
+/**
+ * Author by pq, Date on 2022/6/28.
+ */
+public class VideoPlayActivity extends BaseActivity<ActivityVideoPlayLayoutBinding> implements MediaPlayer.OnPreparedListener, MediaPlayer.OnCompletionListener, MediaPlayer.OnErrorListener, View.OnClickListener {
+    public static final String VIDEO_PATH_KEY = "video_path";
+    private MediaController mMediaController;
+
+    public static void start(Context context, String videoPath) {
+        Intent intent = new Intent(context, VideoPlayActivity.class);
+        intent.putExtra(VIDEO_PATH_KEY, videoPath);
+        context.startActivity(intent);
+    }
+
+    @Override
+    protected void initView() {
+        Utils.setHeadView(viewBinding.viewStatusBar, this, 0);
+        String videoPath = getIntent().getStringExtra(VIDEO_PATH_KEY);
+        if (TextUtils.isEmpty(videoPath)) {
+            ToastUtils.showShort("视频地址不可为空");
+            finish();
+            return;
+        }
+        viewBinding.ivIconBack.setOnClickListener(this);
+        viewBinding.videoView.setVideoPath(videoPath);
+        viewBinding.videoView.requestFocus();
+        mMediaController = new MediaController(this);
+        viewBinding.videoView.setMediaController(mMediaController);
+        viewBinding.videoView.setOnPreparedListener(this);
+        viewBinding.videoView.setOnCompletionListener(this);
+        viewBinding.videoView.setOnErrorListener(this);
+        viewBinding.videoView.start();
+    }
+
+    @Override
+    protected ActivityVideoPlayLayoutBinding getLayoutView() {
+        return ActivityVideoPlayLayoutBinding.inflate(getLayoutInflater());
+    }
+
+    /**
+     * \
+     * videoView onPrepared
+     *
+     * @param mp
+     */
+    @Override
+    public void onPrepared(MediaPlayer mp) {
+    }
+
+    /**
+     * videoView onCompletion
+     *
+     * @param mp
+     */
+    @Override
+    public void onCompletion(MediaPlayer mp) {
+
+    }
+
+    /**
+     * videoView onError
+     *
+     * @param mp
+     * @param what
+     * @param extra
+     * @return
+     */
+    @Override
+    public boolean onError(MediaPlayer mp, int what, int extra) {
+        ToastUtils.showShort("视频加载失败");
+        return false;
+    }
+
+    @Override
+    protected void onResume() {
+        super.onResume();
+        viewBinding.videoView.resume();
+    }
+
+    @Override
+    protected void onPause() {
+        super.onPause();
+        if (viewBinding.videoView.canPause()) {
+            viewBinding.videoView.pause();
+        }
+    }
+
+    @Override
+    protected void onDestroy() {
+        mMediaController = null;
+        super.onDestroy();
+    }
+
+    @Override
+    public void onClick(View v) {
+        int id = v.getId();
+        if (id == R.id.iv_icon_back) {
+            finish();
+            return;
+        }
+    }
+}

+ 2 - 2
BaseLibrary/src/main/java/com/cooleshow/base/utils/ErrorParse.java

@@ -32,8 +32,8 @@ public class ErrorParse {
                 ToastUtils.showShort("登录状态异常,请重新登录");
                 logOut();
                 return;
-            }else{
-                ToastUtils.showShort("onError:" + apiException.getErrmsg());
+            } else {
+                ToastUtils.showShort(apiException.getErrmsg());
             }
         } else {
             throwable.printStackTrace();

+ 2 - 2
BaseLibrary/src/main/java/com/cooleshow/base/utils/Utils.java

@@ -166,8 +166,8 @@ public final class Utils {
     }
 
     public static void setHeadView(View view, Context context, int height) {
-//        int statusBarHeight = QMUIDisplayHelper.getStatusBarHeight(context);
-        int statusBarHeight = getStatusBarHeight(context);
+        int statusBarHeight = QMUIDisplayHelper.getStatusBarHeight(context);
+//        int statusBarHeight = getStatusBarHeight(context);
         ViewGroup.LayoutParams layoutParams = view.getLayoutParams();
         layoutParams.height = statusBarHeight + SizeUtils.dp2px(height);
         view.setLayoutParams(layoutParams);

+ 19 - 7
student/src/main/java/com/cooleshow/student/widgets/HomeworkVideoThumbnailView.java → BaseLibrary/src/main/java/com/cooleshow/base/widgets/VideoThumbnailView.java

@@ -1,8 +1,10 @@
-package com.cooleshow.student.widgets;
+package com.cooleshow.base.widgets;
 
 import android.content.Context;
+import android.text.TextUtils;
 import android.util.AttributeSet;
 import android.view.LayoutInflater;
+import android.view.View;
 import android.widget.FrameLayout;
 
 import androidx.annotation.NonNull;
@@ -10,25 +12,26 @@ import androidx.annotation.Nullable;
 
 import com.bumptech.glide.Glide;
 import com.bumptech.glide.request.RequestOptions;
-import com.cooleshow.base.widgets.QMUIRadiusImageView;
-import com.cooleshow.student.R;
+import com.cooleshow.base.R;
+import com.cooleshow.base.ui.video.VideoPlayActivity;
 
 /**
  * Author by pq, Date on 2022/4/27.
  */
-public class HomeworkVideoThumbnailView extends FrameLayout {
+public class VideoThumbnailView extends FrameLayout {
 
     private QMUIRadiusImageView mIvBg;
+    private String videoPath;
 
-    public HomeworkVideoThumbnailView(@NonNull Context context) {
+    public VideoThumbnailView(@NonNull Context context) {
         this(context, null);
     }
 
-    public HomeworkVideoThumbnailView(@NonNull Context context, @Nullable AttributeSet attrs) {
+    public VideoThumbnailView(@NonNull Context context, @Nullable AttributeSet attrs) {
         this(context, attrs, -1);
     }
 
-    public HomeworkVideoThumbnailView(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
+    public VideoThumbnailView(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
         super(context, attrs, defStyleAttr);
         init();
     }
@@ -36,9 +39,18 @@ public class HomeworkVideoThumbnailView extends FrameLayout {
     private void init() {
         LayoutInflater.from(getContext()).inflate(R.layout.view_homework_video_thumbnail_layout, this);
         mIvBg = findViewById(R.id.iv_bg);
+        mIvBg.setOnClickListener(new OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                if (!TextUtils.isEmpty(videoPath)) {
+                    VideoPlayActivity.start(getContext(), videoPath);
+                }
+            }
+        });
     }
 
     public void setData(String videoUrl) {
+        this.videoPath = videoUrl;
         Glide.with(getContext())
                 .setDefaultRequestOptions(
                         new RequestOptions()

+ 0 - 0
student/src/main/res/drawable-xhdpi/icon_video_play.png → BaseLibrary/src/main/res/drawable-xhdpi/icon_video_play.png


BIN
BaseLibrary/src/main/res/drawable-xhdpi/rc_picture_icon_back.png


BIN
BaseLibrary/src/main/res/drawable-xhdpi/rc_picture_icon_video_play.png


+ 0 - 0
student/src/main/res/drawable-xxhdpi/icon_video_play.png → BaseLibrary/src/main/res/drawable-xxhdpi/icon_video_play.png


+ 47 - 0
BaseLibrary/src/main/res/layout/activity_video_play_layout.xml

@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="utf-8"?>
+<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:background="@color/picture_color_black">
+
+    <View
+        android:id="@+id/view_status_bar"
+        android:layout_width="match_parent"
+        android:layout_height="0dp"
+        app:layout_constraintLeft_toLeftOf="parent"
+        app:layout_constraintRight_toRightOf="parent"
+        app:layout_constraintTop_toTopOf="parent" />
+
+    <VideoView
+        android:id="@+id/video_view"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_centerInParent="true"
+        app:layout_constraintBottom_toBottomOf="parent"
+        app:layout_constraintLeft_toLeftOf="parent"
+        app:layout_constraintRight_toRightOf="parent"
+        app:layout_constraintTop_toTopOf="parent" />
+
+    <ImageView
+        android:id="@+id/iv_play"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_centerInParent="true"
+        android:src="@drawable/rc_picture_icon_video_play"
+        android:visibility="invisible"
+        app:layout_constraintBottom_toBottomOf="parent"
+        app:layout_constraintLeft_toLeftOf="parent"
+        app:layout_constraintRight_toRightOf="parent"
+        app:layout_constraintTop_toTopOf="parent" />
+
+    <ImageView
+        android:id="@+id/iv_icon_back"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:padding="15dp"
+        android:src="@drawable/rc_picture_icon_back"
+        app:layout_constraintLeft_toLeftOf="parent"
+        app:layout_constraintTop_toBottomOf="@+id/view_status_bar" />
+
+</androidx.constraintlayout.widget.ConstraintLayout>

+ 0 - 0
student/src/main/res/layout/view_homework_video_thumbnail_layout.xml → BaseLibrary/src/main/res/layout/view_homework_video_thumbnail_layout.xml


+ 16 - 10
student/src/main/AndroidManifest.xml

@@ -52,7 +52,10 @@
 
         <activity
             android:name=".ui.main.MainActivity"
-            android:exported="false" />
+            android:configChanges="orientation|screenSize|keyboardHidden"
+            android:exported="false"
+            android:screenOrientation="portrait" />
+
         <activity
             android:name=".ui.web.WebActivity"
             android:configChanges="orientation|screenSize|keyboardHidden"
@@ -162,8 +165,8 @@
         <activity
             android:name=".ui.live.LiveRoomActivity"
             android:configChanges="orientation|screenSize|keyboardHidden"
-            android:launchMode="singleTask"
             android:exported="false"
+            android:launchMode="singleTask"
             android:screenOrientation="portrait"
             android:windowSoftInputMode="adjustPan">
             <intent-filter>
@@ -181,7 +184,7 @@
             <meta-data
                 android:name="android.support.FILE_PROVIDER_PATHS"
                 android:resource="@xml/rc_file_path"
-                tools:replace="android:resource"/>
+                tools:replace="android:resource" />
         </provider>
 
 
@@ -205,12 +208,12 @@
             android:name=".ui.mine.FeedBackActivity"
             android:configChanges="orientation|screenSize|keyboardHidden"
             android:screenOrientation="portrait" />
-<!--        分享开始-->
+        <!--        分享开始-->
         <activity
             android:name=".wxapi.WXEntryActivity"
             android:configChanges="keyboardHidden|orientation|screenSize"
             android:exported="true"
-            android:theme="@android:style/Theme.Translucent.NoTitleBar"/>
+            android:theme="@android:style/Theme.Translucent.NoTitleBar" />
 
 
         <activity
@@ -218,10 +221,12 @@
             android:launchMode="singleTask"
             android:noHistory="true">
             <intent-filter>
-                <action android:name="android.intent.action.VIEW"/>
-                <category android:name="android.intent.category.DEFAULT"/>
-                <category android:name="android.intent.category.BROWSABLE"/>
-                <data android:scheme="tencent100424468"/>
+                <action android:name="android.intent.action.VIEW" />
+
+                <category android:name="android.intent.category.DEFAULT" />
+                <category android:name="android.intent.category.BROWSABLE" />
+
+                <data android:scheme="tencent100424468" />
             </intent-filter>
         </activity>
         <activity
@@ -229,10 +234,11 @@
             android:configChanges="orientation|keyboardHidden|screenSize"
             android:theme="@android:style/Theme.Translucent.NoTitleBar"
             tools:replace="android:configChanges" />
+
         <meta-data
             android:name="qqappid"
             android:value="1110018403" />
-<!--        分享结束-->
+        <!--        分享结束-->
 
     </application>
 

+ 2 - 8
student/src/main/java/com/cooleshow/student/ui/course/PianoRoomCourseDetailActivity.java

@@ -11,17 +11,11 @@ import com.cooleshow.base.utils.GlideUtils;
 import com.cooleshow.base.utils.SizeUtils;
 import com.cooleshow.student.R;
 import com.cooleshow.student.bean.PianoRoomCourseHomeworkBean;
-import com.cooleshow.student.bean.SparringCourseCommentBean;
-import com.cooleshow.student.bean.SparringCourseHomeworkBean;
 import com.cooleshow.student.constants.CourseConstants;
 import com.cooleshow.student.contract.PianoRoomCourseDetailContract;
-import com.cooleshow.student.contract.SparringCourseDetailContract;
 import com.cooleshow.student.databinding.ActivityPianoRoomCourseDetailLayoutBinding;
-import com.cooleshow.student.databinding.ActivitySparringCourseDetailLayoutBinding;
 import com.cooleshow.student.presenter.course.PianoRoomCourseDetailPresenter;
-import com.cooleshow.student.presenter.course.SparringCourseDetailPresenter;
-import com.cooleshow.student.widgets.CourseSetCommentDialog;
-import com.cooleshow.student.widgets.HomeworkVideoThumbnailView;
+import com.cooleshow.base.widgets.VideoThumbnailView;
 
 import androidx.annotation.NonNull;
 
@@ -170,7 +164,7 @@ public class PianoRoomCourseDetailActivity extends BaseMVPActivity<ActivityPiano
             if (!TextUtils.isEmpty(videoUrls)) {
                 String[] results = TextUtils.split(videoUrls, ",");
                 for (int i = 0; i < results.length; i++) {
-                    HomeworkVideoThumbnailView videoThumbnailView = new HomeworkVideoThumbnailView(PianoRoomCourseDetailActivity.this);
+                    VideoThumbnailView videoThumbnailView = new VideoThumbnailView(PianoRoomCourseDetailActivity.this);
                     videoThumbnailView.setData(results[i]);
                     LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
                     int left = i == 0 ? 0 : SizeUtils.dp2px(6);

+ 2 - 2
student/src/main/java/com/cooleshow/student/ui/course/SparringCourseDetailActivity.java

@@ -18,7 +18,7 @@ import com.cooleshow.student.contract.SparringCourseDetailContract;
 import com.cooleshow.student.databinding.ActivitySparringCourseDetailLayoutBinding;
 import com.cooleshow.student.presenter.course.SparringCourseDetailPresenter;
 import com.cooleshow.student.widgets.CourseSetCommentDialog;
-import com.cooleshow.student.widgets.HomeworkVideoThumbnailView;
+import com.cooleshow.base.widgets.VideoThumbnailView;
 
 /**
  * Author by pq, Date on 2022/4/27.
@@ -172,7 +172,7 @@ public class SparringCourseDetailActivity extends BaseMVPActivity<ActivitySparri
             if (!TextUtils.isEmpty(videoUrls)) {
                 String[] results = TextUtils.split(videoUrls, ",");
                 for (int i = 0; i < results.length; i++) {
-                    HomeworkVideoThumbnailView videoThumbnailView = new HomeworkVideoThumbnailView(SparringCourseDetailActivity.this);
+                    VideoThumbnailView videoThumbnailView = new VideoThumbnailView(SparringCourseDetailActivity.this);
                     videoThumbnailView.setData(results[i]);
                     LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
                     int left = i == 0 ? 0 : SizeUtils.dp2px(6);

+ 3 - 1
teacher/src/main/AndroidManifest.xml

@@ -54,7 +54,9 @@
         </activity>
         <activity
             android:name=".ui.main.MainActivity"
-            android:exported="false" />
+            android:configChanges="orientation|screenSize|keyboardHidden"
+            android:exported="false"
+            android:screenOrientation="portrait" />
 
         <activity
             android:name=".ui.splash.GuideActivity"

+ 2 - 5
teacher/src/main/java/com/cooleshow/teacher/ui/course/PianoRoomCourseHomeWorkActivity.java

@@ -12,17 +12,14 @@ import com.cooleshow.base.ui.activity.BaseMVPActivity;
 import com.cooleshow.base.utils.GlideUtils;
 import com.cooleshow.base.utils.SizeUtils;
 import com.cooleshow.base.utils.helper.QMUIStatusBarHelper;
+import com.cooleshow.base.widgets.VideoThumbnailView;
 import com.cooleshow.teacher.R;
 import com.cooleshow.teacher.bean.PianoRoomCourseHomeworkBean;
-import com.cooleshow.teacher.bean.PianoRoomCourseInfoBean;
-import com.cooleshow.teacher.bean.SparringCourseHomeworkBean;
 import com.cooleshow.teacher.constants.CourseConstants;
-import com.cooleshow.teacher.contract.PianoRoomCourseDetailContract;
 import com.cooleshow.teacher.contract.PianoRoomCourseHomeworkContract;
 import com.cooleshow.teacher.databinding.ActivityPianoCourseHomeworkLayoutBinding;
 import com.cooleshow.teacher.presenter.homework.PianoRoomCourseHomeWorkPresenter;
 import com.cooleshow.teacher.widgets.CourseSetCommentDialog;
-import com.cooleshow.teacher.widgets.HomeworkVideoThumbnailView;
 import com.cooleshow.usercenter.helper.UserHelper;
 
 import androidx.annotation.Nullable;
@@ -167,7 +164,7 @@ public class PianoRoomCourseHomeWorkActivity extends BaseMVPActivity<ActivityPia
             if (!TextUtils.isEmpty(videoUrls)) {
                 String[] results = TextUtils.split(videoUrls, ",");
                 for (int i = 0; i < results.length; i++) {
-                    HomeworkVideoThumbnailView videoThumbnailView = new HomeworkVideoThumbnailView(PianoRoomCourseHomeWorkActivity.this);
+                    VideoThumbnailView videoThumbnailView = new VideoThumbnailView(PianoRoomCourseHomeWorkActivity.this);
                     videoThumbnailView.setData(results[i]);
                     LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
                     int left = i == 0 ? 0 : SizeUtils.dp2px(6);

+ 2 - 2
teacher/src/main/java/com/cooleshow/teacher/ui/course/SparringCourseDetailActivity.java

@@ -9,6 +9,7 @@ import com.cooleshow.base.router.RouterPath;
 import com.cooleshow.base.ui.activity.BaseMVPActivity;
 import com.cooleshow.base.utils.GlideUtils;
 import com.cooleshow.base.utils.SizeUtils;
+import com.cooleshow.base.widgets.VideoThumbnailView;
 import com.cooleshow.teacher.R;
 import com.cooleshow.teacher.bean.SparringCourseCommentBean;
 import com.cooleshow.teacher.bean.SparringCourseHomeworkBean;
@@ -17,7 +18,6 @@ import com.cooleshow.teacher.contract.SparringCourseDetailContract;
 import com.cooleshow.teacher.databinding.ActivitySparringCourseDetailLayoutBinding;
 import com.cooleshow.teacher.presenter.course.SparringCourseDetailPresenter;
 import com.cooleshow.teacher.widgets.CourseSetCommentDialog;
-import com.cooleshow.teacher.widgets.HomeworkVideoThumbnailView;
 import com.cooleshow.usercenter.helper.UserHelper;
 
 import androidx.annotation.NonNull;
@@ -175,7 +175,7 @@ public class SparringCourseDetailActivity extends BaseMVPActivity<ActivitySparri
             if (!TextUtils.isEmpty(videoUrls)) {
                 String[] results = TextUtils.split(videoUrls, ",");
                 for (int i = 0; i < results.length; i++) {
-                    HomeworkVideoThumbnailView videoThumbnailView = new HomeworkVideoThumbnailView(SparringCourseDetailActivity.this);
+                    VideoThumbnailView videoThumbnailView = new VideoThumbnailView(SparringCourseDetailActivity.this);
                     videoThumbnailView.setData(results[i]);
                     LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
                     int left = i == 0 ? 0 : SizeUtils.dp2px(6);

+ 0 - 53
teacher/src/main/java/com/cooleshow/teacher/widgets/HomeworkVideoThumbnailView.java

@@ -1,53 +0,0 @@
-package com.cooleshow.teacher.widgets;
-
-import android.content.Context;
-import android.util.AttributeSet;
-import android.view.LayoutInflater;
-import android.widget.FrameLayout;
-
-import com.bumptech.glide.Glide;
-import com.bumptech.glide.request.RequestOptions;
-import com.cooleshow.base.widgets.QMUIRadiusImageView;
-import com.cooleshow.teacher.R;
-
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
-
-/**
- * Author by pq, Date on 2022/4/27.
- */
-public class HomeworkVideoThumbnailView extends FrameLayout {
-
-    private QMUIRadiusImageView mIvBg;
-
-    public HomeworkVideoThumbnailView(@NonNull Context context) {
-        this(context, null);
-    }
-
-    public HomeworkVideoThumbnailView(@NonNull Context context, @Nullable AttributeSet attrs) {
-        this(context, attrs, -1);
-    }
-
-    public HomeworkVideoThumbnailView(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
-        super(context, attrs, defStyleAttr);
-        init();
-    }
-
-    private void init() {
-        LayoutInflater.from(getContext()).inflate(R.layout.view_homework_video_thumbnail_layout, this);
-        mIvBg = findViewById(R.id.iv_bg);
-    }
-
-    public void setData(String videoUrl) {
-        Glide.with(getContext())
-                .setDefaultRequestOptions(
-                        new RequestOptions()
-                                .frame(0)
-                                .centerCrop()
-                                .error(com.cooleshow.base.R.drawable.bg_video_placeholder)
-                                .placeholder(com.cooleshow.base.R.drawable.bg_video_placeholder)
-                )
-                .load(videoUrl)
-                .into(mIvBg);
-    }
-}

BIN
teacher/src/main/res/drawable-xhdpi/icon_video_play.png


BIN
teacher/src/main/res/drawable-xxhdpi/icon_video_play.png