Browse Source

修改老师端个人主页新版本UI和部分逻辑

Pq 2 years ago
parent
commit
014431edc1

+ 1 - 1
BaseLibrary/build.gradle

@@ -91,7 +91,7 @@ dependencies {
 
     //Glide
 //    implementation "com.github.bumptech.glide:glide:$glide_version"
-
+    api 'jp.wasabeef:glide-transformations:4.3.0'
     api "com.github.bumptech.glide:glide:$rootProject.ext.android.glide_version"
     kapt "com.github.bumptech.glide:compiler:$rootProject.ext.android.glide_version"
     //Banner

+ 7 - 0
BaseLibrary/src/main/java/com/cooleshow/base/utils/GlideUtils.kt

@@ -5,8 +5,10 @@ package com.cooleshow.base.utils
 import android.content.Context
 import android.widget.ImageView
 import com.bumptech.glide.Glide
+import com.bumptech.glide.load.MultiTransformation
 import com.bumptech.glide.request.RequestOptions
 import com.cooleshow.base.R
+import jp.wasabeef.glide.transformations.BlurTransformation
 
 /*
     Glide工具类
@@ -24,6 +26,11 @@ object GlideUtils {
         Glide.with(context).load(url).fitCenter().into(imageView)
     }
 
+    fun loadImageWhitVague(context: Context, url: String?, imageView: ImageView,defaultDrawable : Int) {
+        Glide.with(context).load(url).apply(
+            RequestOptions.bitmapTransform(MultiTransformation(BlurTransformation(90)))).placeholder(defaultDrawable).error(defaultDrawable).into(imageView)
+    }
+
     /*
         当fragment或者activity失去焦点或者destroyed的时候,Glide会自动停止加载相关资源,确保资源不会被浪费
      */

+ 5 - 0
BaseLibrary/src/main/res/drawable/shape_d8fff8_14dp.xml

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android">
+    <solid android:color="@color/color_d8fff8"/>
+    <corners android:radius="14dp"/>
+</shape>

+ 1 - 0
BaseLibrary/src/main/res/layout/view_badge_list_layout.xml

@@ -5,6 +5,7 @@
     android:orientation="horizontal">
 
     <ImageView
+        android:visibility="gone"
         android:id="@+id/iv_vip_icon"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"

+ 1 - 0
BaseLibrary/src/main/res/values/colors.xml

@@ -116,6 +116,7 @@
     <color name="color_ff0000">#ff0000</color>
     <color name="color_2455e2">#2455e2</color>
     <color name="color_fce2b7">#FCE2B7</color>
+    <color name="color_d8fff8">#D8FFF8</color>
 
     <color name="color_25292e">#25292E</color>
     <color name="color_F8F8F8">#F8F8F8</color>

+ 15 - 2
teacher/src/main/java/com/cooleshow/teacher/ui/homepage/HomePageActivity.java

@@ -9,6 +9,7 @@ import android.widget.LinearLayout;
 import android.widget.TextView;
 
 import com.alibaba.android.arouter.facade.annotation.Route;
+import com.alibaba.android.arouter.launcher.ARouter;
 import com.cooleshow.base.router.RouterPath;
 import com.cooleshow.base.ui.activity.BaseMVPActivity;
 import com.cooleshow.base.utils.GlideUtils;
@@ -47,6 +48,7 @@ public class HomePageActivity extends BaseMVPActivity<ActivityHomePageLayoutBind
         Utils.setHeadView(viewBinding.viewStatusBar, this, 0);
         viewBinding.ivBack.setOnClickListener(this);
         viewBinding.llBadge.setOnClickListener(this);
+        viewBinding.tvEdit.setOnClickListener(this);
     }
 
     @Override
@@ -130,6 +132,11 @@ public class HomePageActivity extends BaseMVPActivity<ActivityHomePageLayoutBind
             showBadgeDialog();
             return;
         }
+        if (id == R.id.tv_edit) {
+            //跳转个人风采
+            ARouter.getInstance().build(RouterPath.MineCenter.MINE_STYLE_PAGE)
+                    .navigation();
+        }
     }
 
     private void showBadgeDialog() {
@@ -169,8 +176,8 @@ public class HomePageActivity extends BaseMVPActivity<ActivityHomePageLayoutBind
             viewBinding.ratingBar.setRating(info.starGrade);
             viewBinding.tvNoScore.setVisibility(View.GONE);
         } else {
-            viewBinding.ratingBar.setVisibility(View.INVISIBLE);
-            viewBinding.tvNoScore.setVisibility(View.VISIBLE);
+            viewBinding.ratingBar.setVisibility(View.VISIBLE);
+            viewBinding.tvNoScore.setVisibility(View.GONE);
         }
         //徽章信息
         viewBinding.llBadge.setVipIcon(info.isVip == 1);
@@ -179,8 +186,14 @@ public class HomePageActivity extends BaseMVPActivity<ActivityHomePageLayoutBind
         viewBinding.tvFansNum.setText(info.fansNum);
         //已上课时数
         viewBinding.tvCourseNumCompleted.setText(info.expTime);
+        //未上课时数
+        viewBinding.tvCourseNumNotStart.setText(info.unExpTime);
+        //vip
+        viewBinding.ivVip.setImageResource(info.isVip == 1 ? R.drawable.icon_vip_able_big : R.drawable.icon_vip_enable_big);
         //头像
+        viewBinding.ivAvatar.setBorderColor(info.isVip == 1 ? getResources().getColor(com.cooleshow.base.R.color.color_fce2b7) : getResources().getColor(com.cooleshow.base.R.color.white));
         GlideUtils.INSTANCE.loadImage(this, info.heardUrl, viewBinding.ivAvatar, R.drawable.icon_teacher_default_head);
+        GlideUtils.INSTANCE.loadImageWhitVague(this, info.heardUrl, viewBinding.ivHeaderBg, R.drawable.bg_home_page_header);
         //昵称
         viewBinding.tvNickname.setText(info.username);
         //subjectName

+ 1 - 1
teacher/src/main/java/com/cooleshow/teacher/ui/main/MineFragment.java

@@ -87,7 +87,7 @@ public class MineFragment extends BaseMVPFragment<FragmentMineLayoutBinding, Min
         if (teacherUserInfo.isVip == 1) {
             mViewBinding.ivAvatar.setBorderColor(getResources().getColor(com.cooleshow.base.R.color.color_fce2b7));
         } else {
-            mViewBinding.ivAvatar.setBorderColor(getResources().getColor(com.cooleshow.base.R.color.transparent));
+            mViewBinding.ivAvatar.setBorderColor(getResources().getColor(com.cooleshow.base.R.color.white));
         }
         GlideUtils.INSTANCE.loadImage(requireContext(), teacherUserInfo.heardUrl, mViewBinding.ivAvatar, R.drawable.icon_teacher_default_head);
         //昵称

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


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


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


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


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


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


+ 271 - 134
teacher/src/main/res/layout/activity_home_page_layout.xml

@@ -8,10 +8,9 @@
     <ImageView
         android:id="@+id/iv_header_bg"
         android:layout_width="match_parent"
-        android:layout_height="wrap_content"
+        android:layout_height="188dp"
         android:adjustViewBounds="true"
         android:scaleType="fitXY"
-        android:src="@drawable/bg_home_page_header"
         app:layout_constraintLeft_toLeftOf="parent"
         app:layout_constraintTop_toTopOf="parent" />
 
@@ -36,92 +35,135 @@
     <View
         android:id="@+id/view_top_bg"
         android:layout_width="match_parent"
-        android:layout_height="127dp"
+        android:layout_height="0dp"
         android:layout_marginStart="14dp"
-        android:layout_marginTop="51dp"
+        android:layout_marginTop="53dp"
         android:layout_marginEnd="14dp"
-        android:background="@drawable/shape_home_page_header_bg"
+        android:background="@drawable/shape_10dp_white"
+        app:layout_constraintBottom_toBottomOf="@+id/view_top_header_bottom_line"
         app:layout_constraintTop_toBottomOf="@+id/iv_back" />
 
+    <View
+        android:id="@+id/view_top_header_bottom_line"
+        android:layout_width="1px"
+        android:layout_height="1px"
+        android:layout_marginTop="16dp"
+        app:layout_constraintLeft_toLeftOf="parent"
+        app:layout_constraintTop_toBottomOf="@+id/tv_fans_title" />
+
+    <TextView
+        android:id="@+id/tv_edit"
+        android:layout_width="60dp"
+        android:layout_height="28dp"
+        android:layout_marginTop="11dp"
+        android:layout_marginEnd="11dp"
+        android:background="@drawable/shape_d8fff8_14dp"
+        android:gravity="center"
+        android:text="编辑"
+        android:textColor="@color/color_2dc7aa"
+        android:textSize="@dimen/sp_12"
+        app:layout_constraintRight_toRightOf="@+id/view_top_bg"
+        app:layout_constraintTop_toTopOf="@+id/view_top_bg" />
+
     <de.hdodenhof.circleimageview.CircleImageView
         android:id="@+id/iv_avatar"
-        android:layout_width="58dp"
-        android:layout_height="58dp"
-        android:layout_marginStart="11dp"
+        android:layout_width="78dp"
+        android:layout_height="78dp"
+        android:layout_marginStart="12dp"
         android:layout_marginTop="14dp"
+        app:civ_border_width="2dp"
+        app:civ_border_color="@color/white"
         android:src="@drawable/icon_teacher_default_head"
         app:layout_constraintLeft_toLeftOf="@+id/view_top_bg"
-        app:layout_constraintTop_toTopOf="@+id/view_top_bg" />
+        app:layout_constraintTop_toBottomOf="@+id/iv_back" />
 
+    <View
+        android:id="@+id/view_vip_help_line"
+        android:layout_marginEnd="25dp"
+        app:layout_constraintRight_toRightOf="@+id/iv_avatar"
+        android:layout_marginBottom="22dp"
+        app:layout_constraintBottom_toBottomOf="@+id/iv_avatar"
+        android:layout_width="1px"
+        android:layout_height="1px"/>
+
+    <ImageView
+        android:id="@+id/iv_vip"
+        app:layout_constraintLeft_toRightOf="@+id/view_vip_help_line"
+        app:layout_constraintTop_toBottomOf="@+id/view_vip_help_line"
+        android:src="@drawable/icon_vip_enable_big"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"/>
 
     <TextView
         android:id="@+id/tv_nickname"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:layout_marginStart="10dp"
-        android:layout_marginTop="6dp"
-        android:layout_marginBottom="10dp"
+        android:layout_marginStart="12dp"
+        android:layout_marginTop="14dp"
         android:includeFontPadding="false"
         android:textColor="@color/color_1a1a1a"
         android:textSize="@dimen/sp_18"
-        app:layout_constraintLeft_toRightOf="@+id/iv_avatar"
-        app:layout_constraintTop_toTopOf="@+id/iv_avatar"
+        app:layout_constraintLeft_toLeftOf="@+id/view_top_bg"
+        app:layout_constraintTop_toBottomOf="@+id/iv_avatar"
         app:layout_constraintVertical_chainStyle="packed"
         tools:text="游客12e32td" />
 
-    <com.cooleshow.base.widgets.BadgeIconListView
-        android:id="@+id/ll_badge"
-        android:layout_width="0dp"
+    <ImageView
+        android:id="@+id/iv_edu_cert"
+        android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:layout_marginStart="5dp"
-        android:visibility="visible"
+        android:layout_marginStart="8dp"
+        android:src="@drawable/icon_education_cert"
+        android:visibility="gone"
         app:layout_constraintBottom_toBottomOf="@+id/tv_nickname"
         app:layout_constraintLeft_toRightOf="@+id/tv_nickname"
         app:layout_constraintTop_toTopOf="@+id/tv_nickname" />
 
-    <!--    <ImageView-->
-    <!--        android:id="@+id/iv_teacher_entry_tag"-->
-    <!--        android:layout_width="wrap_content"-->
-    <!--        android:layout_height="wrap_content"-->
-    <!--        android:layout_marginStart="6dp"-->
-    <!--        android:src="@drawable/icon_teahcer_entry_tag"-->
-    <!--        android:visibility="gone"-->
-    <!--        app:layout_constraintBottom_toBottomOf="@+id/tv_nickname"-->
-    <!--        app:layout_constraintLeft_toRightOf="@+id/tv_nickname"-->
-    <!--        app:layout_constraintTop_toTopOf="@+id/tv_nickname" />-->
-
-    <!--    <ImageView-->
-    <!--        android:id="@+id/iv_teacher_music_person_tag"-->
-    <!--        android:layout_width="wrap_content"-->
-    <!--        android:layout_height="wrap_content"-->
-    <!--        android:layout_marginStart="3dp"-->
-    <!--        android:src="@drawable/icon_teacher_music_person_tag"-->
-    <!--        android:visibility="gone"-->
-    <!--        app:layout_constraintBottom_toBottomOf="@+id/iv_teacher_entry_tag"-->
-    <!--        app:layout_constraintLeft_toRightOf="@+id/iv_teacher_entry_tag"-->
-    <!--        app:layout_constraintTop_toTopOf="@+id/iv_teacher_entry_tag" />-->
+    <ImageView
+        android:id="@+id/iv_teacher_cert"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="6dp"
+        android:src="@drawable/icon_teacher_cert"
+        android:visibility="gone"
+        app:layout_constraintBottom_toBottomOf="@+id/tv_nickname"
+        app:layout_constraintLeft_toRightOf="@+id/iv_edu_cert"
+        app:layout_constraintTop_toTopOf="@+id/tv_nickname" />
 
-    <LinearLayout
-        android:id="@+id/ll_subject_container"
-        android:layout_width="0dp"
+    <TextView
+        android:id="@+id/tv_badge_title"
+        android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:layout_marginTop="8dp"
-        android:layout_marginRight="@dimen/dp_30"
-        android:orientation="horizontal"
-        app:layout_constraintLeft_toLeftOf="@+id/tv_nickname"
-        app:layout_constraintRight_toRightOf="@+id/view_top_bg"
+        android:layout_marginStart="12dp"
+        android:layout_marginTop="22dp"
+        android:includeFontPadding="false"
+        android:text="勋章:"
+        android:textColor="@color/color_666666"
+        android:textSize="@dimen/sp_12"
+        app:layout_constraintLeft_toLeftOf="@+id/view_top_bg"
         app:layout_constraintTop_toBottomOf="@+id/tv_nickname" />
 
-    <LinearLayout
-        android:id="@+id/ll_subject_container2"
-        android:layout_width="0dp"
+    <com.cooleshow.base.widgets.BadgeIconListView
+        android:id="@+id/ll_badge"
+        android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:layout_marginTop="5dp"
-        android:orientation="horizontal"
-        android:visibility="gone"
-        app:layout_constraintLeft_toLeftOf="@+id/ll_subject_container"
-        app:layout_constraintRight_toRightOf="@+id/ll_subject_container"
-        app:layout_constraintTop_toBottomOf="@+id/ll_subject_container" />
+        android:visibility="visible"
+        app:layout_constraintBottom_toBottomOf="@+id/tv_badge_title"
+        app:layout_constraintLeft_toRightOf="@+id/tv_badge_title"
+        app:layout_constraintTop_toTopOf="@+id/tv_badge_title" />
+
+    <TextView
+        android:id="@+id/tv_score_title"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="15dp"
+        android:includeFontPadding="false"
+        android:text="评分:"
+        android:textColor="@color/color_666666"
+        android:textSize="@dimen/sp_12"
+        app:layout_constraintBottom_toBottomOf="@+id/tv_badge_title"
+        app:layout_constraintLeft_toRightOf="@+id/ll_badge"
+        app:layout_constraintTop_toTopOf="@+id/tv_badge_title" />
 
 
     <RatingBar
@@ -129,105 +171,200 @@
         style="@style/HomeRatingBar"
         android:layout_width="wrap_content"
         android:layout_height="19dp"
-        android:layout_marginTop="20dp"
         android:isIndicator="true"
         android:numStars="5"
         android:rating="0"
         android:stepSize="1"
-        android:visibility="invisible"
-        app:layout_constraintLeft_toLeftOf="@+id/iv_avatar"
-        app:layout_constraintTop_toBottomOf="@+id/iv_avatar" />
+        android:visibility="visible"
+        app:layout_constraintBottom_toBottomOf="@+id/tv_score_title"
+        app:layout_constraintLeft_toRightOf="@+id/tv_score_title"
+        app:layout_constraintTop_toTopOf="@+id/tv_score_title" />
 
     <TextView
         android:id="@+id/tv_no_score"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:layout_marginTop="20dp"
         android:text="暂无评分"
         android:textSize="@dimen/sp_13"
         android:visibility="gone"
-        app:layout_constraintLeft_toLeftOf="@+id/iv_avatar"
-        app:layout_constraintTop_toBottomOf="@+id/iv_avatar" />
+        app:layout_constraintBottom_toBottomOf="@+id/tv_score_title"
+        app:layout_constraintLeft_toRightOf="@+id/tv_score_title"
+        app:layout_constraintTop_toTopOf="@+id/tv_score_title" />
 
-    <LinearLayout
-        android:id="@+id/ll_fans"
+    <ImageView
+        android:id="@+id/iv_subject"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:layout_marginEnd="12dp"
-        android:gravity="center_vertical"
+        android:layout_marginStart="12dp"
+        android:layout_marginTop="12dp"
+        android:src="@drawable/icon_good_at_music_subject"
+        app:layout_constraintLeft_toLeftOf="@+id/view_top_bg"
+        app:layout_constraintTop_toBottomOf="@+id/tv_badge_title" />
+
+    <LinearLayout
+        android:paddingStart="10dp"
+        android:id="@+id/ll_subject_container"
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:layout_marginRight="@dimen/dp_30"
         android:orientation="horizontal"
-        app:layout_constraintBottom_toBottomOf="@+id/ll_course_num_completed"
-        app:layout_constraintRight_toLeftOf="@+id/ll_course_num_completed"
-        app:layout_constraintTop_toTopOf="@+id/ll_course_num_completed">
-
-
-        <TextView
-            android:id="@+id/tv_fans_title"
-            android:layout_width="wrap_content"
-            android:layout_height="28dp"
-            android:gravity="center"
-            android:includeFontPadding="false"
-            android:text="粉丝"
-            android:textColor="@color/color_333333"
-            android:textSize="@dimen/sp_14" />
-
-        <TextView
-            android:id="@+id/tv_fans_num"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:includeFontPadding="false"
-            android:paddingStart="3dp"
-            android:text="0"
-            android:textColor="@color/color_333333"
-            android:textSize="@dimen/sp_17"
-            android:textStyle="bold"
-            tools:text="1181" />
-    </LinearLayout>
+        app:layout_constraintBottom_toBottomOf="@+id/iv_subject"
+        app:layout_constraintLeft_toRightOf="@+id/iv_subject"
+        app:layout_constraintRight_toRightOf="@+id/view_top_bg"
+        app:layout_constraintTop_toTopOf="@+id/iv_subject" />
 
-    <View
-        android:layout_width="1dp"
-        android:layout_height="12dp"
-        android:background="@color/color_d3d3d3"
-        app:layout_constraintBottom_toBottomOf="@+id/ll_course_num_completed"
-        app:layout_constraintLeft_toRightOf="@+id/ll_fans"
-        app:layout_constraintRight_toLeftOf="@+id/ll_course_num_completed"
-        app:layout_constraintTop_toTopOf="@+id/ll_course_num_completed" />
 
     <LinearLayout
-        android:id="@+id/ll_course_num_completed"
-        android:layout_width="wrap_content"
+        android:id="@+id/ll_subject_container2"
+        android:layout_width="0dp"
         android:layout_height="wrap_content"
-        android:layout_marginStart="12dp"
-        android:layout_marginEnd="10dp"
-        android:gravity="center_vertical"
+        android:layout_marginTop="5dp"
         android:orientation="horizontal"
-        app:layout_constraintBottom_toBottomOf="@+id/rating_bar"
+        android:visibility="gone"
+        app:layout_constraintLeft_toLeftOf="@+id/ll_subject_container"
+        app:layout_constraintRight_toRightOf="@+id/ll_subject_container"
+        app:layout_constraintTop_toBottomOf="@+id/ll_subject_container" />
+
+
+    <TextView
+        android:id="@+id/tv_fans_title"
+        android:layout_width="58dp"
+        android:layout_height="28dp"
+        android:layout_marginStart="29dp"
+        android:layout_marginTop="56dp"
+        android:gravity="center"
+        android:includeFontPadding="false"
+        android:text="粉丝"
+        android:textColor="@color/color_999999"
+        android:textSize="@dimen/sp_14"
+        app:layout_constraintHorizontal_chainStyle="spread_inside"
+        app:layout_constraintLeft_toLeftOf="@+id/view_top_bg"
+        app:layout_constraintRight_toLeftOf="@+id/tv_course_num_completed_title"
+        app:layout_constraintTop_toBottomOf="@+id/ll_subject_container2" />
+
+    <View
+        android:id="@+id/view_fans"
+        android:layout_width="0dp"
+        android:layout_height="0dp"
+        app:layout_constraintBottom_toBottomOf="@+id/view_top_bg"
+        app:layout_constraintLeft_toLeftOf="@+id/view_top_bg"
+        app:layout_constraintRight_toLeftOf="@+id/view_line1"
+        app:layout_constraintTop_toTopOf="@+id/tv_fans_num" />
+
+
+    <View
+        android:id="@+id/view_line1"
+        android:layout_width="0.5dp"
+        android:layout_height="24dp"
+        android:background="@color/color_eaeaea"
+        app:layout_constraintBottom_toBottomOf="@+id/tv_fans_title"
+        app:layout_constraintLeft_toRightOf="@+id/tv_fans_title"
+        app:layout_constraintRight_toLeftOf="@+id/tv_course_num_completed_title"
+        app:layout_constraintTop_toTopOf="@+id/tv_fans_num" />
+
+    <TextView
+        android:id="@+id/tv_course_num_completed_title"
+        android:layout_width="58dp"
+        android:layout_height="28dp"
+        android:layout_marginTop="1dp"
+        android:gravity="center"
+        android:includeFontPadding="false"
+        android:text="已上课时"
+        android:textColor="@color/color_999999"
+        android:textSize="@dimen/sp_14"
+        app:layout_constraintLeft_toRightOf="@+id/tv_fans_title"
+        app:layout_constraintRight_toLeftOf="@+id/tv_course_num_not_start_title"
+        app:layout_constraintTop_toTopOf="@+id/tv_fans_title" />
+
+    <View
+        android:id="@+id/view_course_num_completed"
+        android:layout_width="0dp"
+        android:layout_height="0dp"
+        app:layout_constraintBottom_toBottomOf="@+id/view_top_bg"
+        app:layout_constraintLeft_toRightOf="@+id/view_line1"
+        app:layout_constraintRight_toLeftOf="@+id/view_line2"
+        app:layout_constraintTop_toTopOf="@+id/tv_course_num_completed" />
+
+    <View
+        android:id="@+id/view_line2"
+        android:layout_width="0.5dp"
+        android:layout_height="24dp"
+        android:background="@color/color_eaeaea"
+        app:layout_constraintBottom_toBottomOf="@+id/tv_course_num_completed_title"
+        app:layout_constraintLeft_toRightOf="@+id/tv_course_num_completed_title"
+        app:layout_constraintRight_toLeftOf="@+id/tv_course_num_not_start_title"
+        app:layout_constraintTop_toTopOf="@+id/tv_course_num_completed" />
+
+
+    <TextView
+        android:id="@+id/tv_course_num_not_start_title"
+        android:layout_width="58dp"
+        android:layout_height="28dp"
+        android:layout_marginTop="1dp"
+        android:layout_marginEnd="29dp"
+        android:gravity="center"
+        android:includeFontPadding="false"
+        android:text="未上课时"
+        android:textColor="@color/color_999999"
+        android:textSize="@dimen/sp_14"
+        app:layout_constraintLeft_toRightOf="@+id/tv_course_num_completed_title"
+        app:layout_constraintRight_toRightOf="@+id/view_top_bg"
+        app:layout_constraintTop_toTopOf="@+id/tv_fans_title" />
+
+    <View
+        android:id="@+id/view_course_num_not_start"
+        android:layout_width="0dp"
+        android:layout_height="0dp"
+        app:layout_constraintBottom_toBottomOf="@+id/view_top_bg"
+        app:layout_constraintLeft_toRightOf="@+id/view_line2"
         app:layout_constraintRight_toRightOf="@+id/view_top_bg"
-        app:layout_constraintTop_toTopOf="@+id/rating_bar">
-
-
-        <TextView
-            android:id="@+id/tv_course_num_completed_title"
-            android:layout_width="wrap_content"
-            android:layout_height="28dp"
-            android:gravity="center"
-            android:includeFontPadding="false"
-            android:text="已上课时"
-            android:textColor="@color/color_333333"
-            android:textSize="@dimen/sp_14" />
-
-        <TextView
-            android:id="@+id/tv_course_num_completed"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:includeFontPadding="false"
-            android:paddingStart="3dp"
-            android:text="0"
-            android:textColor="@color/color_333333"
-            android:textSize="@dimen/sp_17"
-            android:textStyle="bold"
-            tools:text="1111118" />
-    </LinearLayout>
+        app:layout_constraintTop_toTopOf="@+id/tv_course_num_not_start" />
+
+
+    <TextView
+        android:id="@+id/tv_fans_num"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginBottom="1dp"
+        android:includeFontPadding="false"
+        android:text="0"
+        android:textColor="@color/color_333333"
+        android:textSize="@dimen/sp_22"
+        android:textStyle="bold"
+        app:layout_constraintBottom_toTopOf="@+id/tv_fans_title"
+        app:layout_constraintLeft_toLeftOf="@+id/tv_fans_title"
+        app:layout_constraintRight_toRightOf="@+id/tv_fans_title"
+        tools:text="1181" />
+
+    <TextView
+        android:id="@+id/tv_course_num_completed"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:includeFontPadding="false"
+        android:text="0"
+        android:textColor="@color/color_333333"
+        android:textSize="@dimen/sp_22"
+        android:textStyle="bold"
+        app:layout_constraintLeft_toLeftOf="@+id/tv_course_num_completed_title"
+        app:layout_constraintRight_toRightOf="@+id/tv_course_num_completed_title"
+        app:layout_constraintTop_toTopOf="@+id/tv_fans_num"
+        tools:text="118" />
+
+
+    <TextView
+        android:id="@+id/tv_course_num_not_start"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:includeFontPadding="false"
+        android:text="0"
+        android:textColor="@color/color_333333"
+        android:textSize="@dimen/sp_22"
+        android:textStyle="bold"
+        app:layout_constraintLeft_toLeftOf="@+id/tv_course_num_not_start_title"
+        app:layout_constraintRight_toRightOf="@+id/tv_course_num_not_start_title"
+        app:layout_constraintTop_toTopOf="@+id/tv_fans_num"
+        tools:text="118" />
+
 
     <com.google.android.material.tabs.TabLayout
         android:id="@+id/tab_layout"