Selaa lähdekoodia

增加老师端徽章说明弹窗

Pq 3 vuotta sitten
vanhempi
commit
b12e9e509f

+ 12 - 0
teacher/src/main/java/com/cooleshow/teacher/ui/homepage/HomePageActivity.java

@@ -22,6 +22,7 @@ import com.cooleshow.teacher.constants.TeacherInfoConstants;
 import com.cooleshow.teacher.contract.HomePageContract;
 import com.cooleshow.teacher.databinding.ActivityHomePageLayoutBinding;
 import com.cooleshow.teacher.presenter.homePage.HomePagePresenter;
+import com.cooleshow.teacher.widgets.dialog.BadgeDesDialog;
 import com.cooleshow.usercenter.helper.UserHelper;
 import com.google.android.material.tabs.TabLayout;
 import com.google.android.material.tabs.TabLayoutMediator;
@@ -45,6 +46,7 @@ public class HomePageActivity extends BaseMVPActivity<ActivityHomePageLayoutBind
     protected void initView() {
         Utils.setHeadView(viewBinding.viewStatusBar, this, 0);
         viewBinding.ivBack.setOnClickListener(this);
+        viewBinding.llBadge.setOnClickListener(this);
     }
 
     @Override
@@ -121,10 +123,20 @@ public class HomePageActivity extends BaseMVPActivity<ActivityHomePageLayoutBind
         int id = v.getId();
         if (id == R.id.iv_back) {
             finish();
+
+        }
+        if (id == R.id.ll_badge) {
+            //显示徽章说明
+            showBadgeDialog();
             return;
         }
     }
 
+    private void showBadgeDialog() {
+        BadgeDesDialog badgeDesDialog = new BadgeDesDialog(this);
+        badgeDesDialog.show();
+    }
+
     private TabLayout.Tab createTab(TabLayout.Tab tab, String text) {
         tab.setCustomView(R.layout.view_homepage_tab_layout);
         View customView = tab.getCustomView();

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

@@ -22,6 +22,7 @@ import com.cooleshow.teacher.constants.TeacherInfoConstants;
 import com.cooleshow.teacher.contract.MineContract;
 import com.cooleshow.teacher.databinding.FragmentMineLayoutBinding;
 import com.cooleshow.teacher.presenter.main.MinePresenter;
+import com.cooleshow.teacher.widgets.dialog.BadgeDesDialog;
 import com.cooleshow.usercenter.helper.UserHelper;
 import com.tbruyelle.rxpermissions3.RxPermissions;
 
@@ -67,6 +68,7 @@ public class MineFragment extends BaseMVPFragment<FragmentMineLayoutBinding, Min
         mViewBinding.tvPianoCourse.setOnClickListener(this);
         mViewBinding.tvHomework.setOnClickListener(this);
         mViewBinding.tvCourseComment.setOnClickListener(this);
+        mViewBinding.llBadge.setOnClickListener(this);
 
     }
 
@@ -308,9 +310,18 @@ public class MineFragment extends BaseMVPFragment<FragmentMineLayoutBinding, Min
                 ARouter.getInstance().build(RouterPath.CommentCenter.TEACHER_COURSE_COMMENT)
                         .navigation();
                 break;
+            case R.id.ll_badge:
+                //显示徽章说明
+                showBadgeDialog();
+                break;
         }
     }
 
+    private void showBadgeDialog() {
+        BadgeDesDialog badgeDesDialog = new BadgeDesDialog(getContext());
+        badgeDesDialog.show();
+    }
+
     private void goCert() {
         ARouter.getInstance().build(RouterPath.WebCenter.ACTIVITY_HTML)
                 .withString(WebConstants.WEB_URL, WebConstants.TEACHER_CERT)

+ 11 - 0
teacher/src/main/java/com/cooleshow/teacher/ui/main/NewHomeFragment.java

@@ -37,6 +37,7 @@ import com.cooleshow.teacher.databinding.FragmentNewHomeLayoutBinding;
 import com.cooleshow.teacher.presenter.main.HomePresenter;
 import com.cooleshow.teacher.widgets.HomeHotAlbumItemDecoration;
 import com.cooleshow.teacher.widgets.HomeHotMusicSheetItemDecoration;
+import com.cooleshow.teacher.widgets.dialog.BadgeDesDialog;
 import com.cooleshow.usercenter.helper.UserHelper;
 import com.youth.banner.adapter.BannerImageAdapter;
 import com.youth.banner.config.BannerConfig;
@@ -124,6 +125,7 @@ public class NewHomeFragment extends BaseMVPFragment<FragmentNewHomeLayoutBindin
     }
 
     private void initListener() {
+        mViewBinding.viewBadge.setOnClickListener(this);
         mViewBinding.ivScan.setOnClickListener(this);
         mViewBinding.imMessage.setOnClickListener(this);
         mViewBinding.flCourseEnter.setOnClickListener(this);
@@ -537,5 +539,14 @@ public class NewHomeFragment extends BaseMVPFragment<FragmentNewHomeLayoutBindin
             WebStartHelper.startHotMusicSheetList();
             return;
         }
+        if (id == R.id.view_badge) {
+            showBadgeDialog();
+            return;
+        }
+    }
+
+    private void showBadgeDialog() {
+        BadgeDesDialog badgeDesDialog = new BadgeDesDialog(getContext());
+        badgeDesDialog.show();
     }
 }

+ 31 - 0
teacher/src/main/java/com/cooleshow/teacher/widgets/dialog/BadgeDesDialog.java

@@ -0,0 +1,31 @@
+package com.cooleshow.teacher.widgets.dialog;
+
+import android.app.Dialog;
+import android.content.Context;
+import android.os.Bundle;
+import android.view.View;
+
+import com.cooleshow.teacher.R;
+
+import androidx.annotation.NonNull;
+
+/**
+ * Author by pq, Date on 2022/8/15.
+ */
+public class BadgeDesDialog extends Dialog {
+    public BadgeDesDialog(@NonNull Context context) {
+        super(context, com.cooleshow.base.R.style.BaseDialog);
+    }
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.dialog_badge_des_layout);
+        findViewById(R.id.iv_close).setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                dismiss();
+            }
+        });
+    }
+}

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


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


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


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


+ 264 - 0
teacher/src/main/res/layout/dialog_badge_des_layout.xml

@@ -0,0 +1,264 @@
+<?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="wrap_content">
+
+    <androidx.constraintlayout.widget.ConstraintLayout
+        android:id="@+id/cs_content"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="25dp"
+        android:background="@drawable/bg_white_10dp"
+        android:paddingStart="23dp"
+        android:paddingEnd="23dp"
+        android:paddingBottom="25dp"
+        app:layout_constraintTop_toTopOf="parent">
+
+        <ImageView
+            android:id="@+id/iv_style_badge"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="68dp"
+            android:src="@drawable/icon_style_badge_new_able"
+            app:layout_constraintLeft_toLeftOf="parent"
+            app:layout_constraintTop_toTopOf="parent" />
+
+        <TextView
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:includeFontPadding="false"
+            android:paddingStart="8dp"
+            android:text="达人认证勋章"
+            android:textColor="@color/color_333333"
+            android:textSize="@dimen/sp_16"
+            android:textStyle="bold"
+            app:layout_constraintBottom_toBottomOf="@+id/iv_style_badge"
+            app:layout_constraintLeft_toRightOf="@+id/iv_style_badge"
+            app:layout_constraintTop_toTopOf="@+id/iv_style_badge" />
+
+        <TextView
+            android:id="@+id/tv_style_badge_des1"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="9dp"
+            android:text="此勋章为"
+            android:textColor="@color/color_666666"
+            android:textSize="@dimen/sp_12"
+            app:layout_constraintLeft_toLeftOf="@+id/iv_style_badge"
+            app:layout_constraintTop_toBottomOf="@+id/iv_style_badge" />
+
+        <TextView
+            android:id="@+id/tv_style_badge_des2"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="完成「达人认证」"
+            android:textColor="@color/color_666666"
+            android:textSize="@dimen/sp_12"
+            android:textStyle="bold"
+            app:layout_constraintBottom_toBottomOf="@+id/tv_style_badge_des1"
+            app:layout_constraintLeft_toRightOf="@+id/tv_style_badge_des1"
+            app:layout_constraintTop_toTopOf="@+id/tv_style_badge_des1" />
+
+        <TextView
+            android:id="@+id/tv_style_badge_des3"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="后会点亮。"
+            android:textColor="@color/color_666666"
+            android:textSize="@dimen/sp_12"
+            app:layout_constraintBottom_toBottomOf="@+id/tv_style_badge_des1"
+            app:layout_constraintLeft_toRightOf="@+id/tv_style_badge_des2"
+            app:layout_constraintTop_toTopOf="@+id/tv_style_badge_des1" />
+
+
+        <ImageView
+            android:id="@+id/iv_video_badge"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="11dp"
+            android:src="@drawable/icon_video_badge_new_able"
+            app:layout_constraintLeft_toLeftOf="parent"
+            app:layout_constraintTop_toBottomOf="@+id/tv_style_badge_des1" />
+
+        <TextView
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:includeFontPadding="false"
+            android:paddingStart="8dp"
+            android:text="视频课勋章"
+            android:textColor="@color/color_333333"
+            android:textSize="@dimen/sp_16"
+            android:textStyle="bold"
+            app:layout_constraintBottom_toBottomOf="@+id/iv_video_badge"
+            app:layout_constraintLeft_toRightOf="@+id/iv_video_badge"
+            app:layout_constraintTop_toTopOf="@+id/iv_video_badge" />
+
+        <TextView
+            android:id="@+id/tv_video_badge_des1"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="9dp"
+            android:text="此勋章为"
+            android:textColor="@color/color_666666"
+            android:textSize="@dimen/sp_12"
+            app:layout_constraintLeft_toLeftOf="@+id/iv_video_badge"
+            app:layout_constraintTop_toBottomOf="@+id/iv_video_badge" />
+
+        <TextView
+            android:id="@+id/tv_video_badge_des2"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="完成「视频课创建」"
+            android:textColor="@color/color_666666"
+            android:textSize="@dimen/sp_12"
+            android:textStyle="bold"
+            app:layout_constraintBottom_toBottomOf="@+id/tv_video_badge_des1"
+            app:layout_constraintLeft_toRightOf="@+id/tv_video_badge_des1"
+            app:layout_constraintTop_toTopOf="@+id/tv_video_badge_des1" />
+
+        <TextView
+            android:id="@+id/tv_video_badge_des3"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="后会点亮。"
+            android:textColor="@color/color_666666"
+            android:textSize="@dimen/sp_12"
+            app:layout_constraintBottom_toBottomOf="@+id/tv_video_badge_des1"
+            app:layout_constraintLeft_toRightOf="@+id/tv_video_badge_des2"
+            app:layout_constraintTop_toTopOf="@+id/tv_video_badge_des1" />
+
+
+        <ImageView
+            android:id="@+id/iv_live_badge"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="11dp"
+            android:src="@drawable/icon_live_badge_new_able"
+            app:layout_constraintLeft_toLeftOf="parent"
+            app:layout_constraintTop_toBottomOf="@+id/tv_video_badge_des1" />
+
+        <TextView
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:includeFontPadding="false"
+            android:paddingStart="8dp"
+            android:text="直播课勋章"
+            android:textColor="@color/color_333333"
+            android:textSize="@dimen/sp_16"
+            android:textStyle="bold"
+            app:layout_constraintBottom_toBottomOf="@+id/iv_live_badge"
+            app:layout_constraintLeft_toRightOf="@+id/iv_live_badge"
+            app:layout_constraintTop_toTopOf="@+id/iv_live_badge" />
+
+        <TextView
+            android:id="@+id/tv_live_badge_des1"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="9dp"
+            android:text="此勋章为"
+            android:textColor="@color/color_666666"
+            android:textSize="@dimen/sp_12"
+            app:layout_constraintLeft_toLeftOf="@+id/iv_live_badge"
+            app:layout_constraintTop_toBottomOf="@+id/iv_live_badge" />
+
+        <TextView
+            android:id="@+id/tv_live_badge_des2"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="完成「直播课创建」"
+            android:textColor="@color/color_666666"
+            android:textSize="@dimen/sp_12"
+            android:textStyle="bold"
+            app:layout_constraintBottom_toBottomOf="@+id/tv_live_badge_des1"
+            app:layout_constraintLeft_toRightOf="@+id/tv_live_badge_des1"
+            app:layout_constraintTop_toTopOf="@+id/tv_live_badge_des1" />
+
+        <TextView
+            android:id="@+id/tv_live_badge_des3"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="后会点亮。"
+            android:textColor="@color/color_666666"
+            android:textSize="@dimen/sp_12"
+            app:layout_constraintBottom_toBottomOf="@+id/tv_live_badge_des1"
+            app:layout_constraintLeft_toRightOf="@+id/tv_live_badge_des2"
+            app:layout_constraintTop_toTopOf="@+id/tv_live_badge_des1" />
+
+
+        <ImageView
+            android:id="@+id/iv_music_sheet_badge"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="11dp"
+            android:src="@drawable/icon_album_badge_new_able"
+            app:layout_constraintLeft_toLeftOf="parent"
+            app:layout_constraintTop_toBottomOf="@+id/tv_live_badge_des1" />
+
+        <TextView
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:includeFontPadding="false"
+            android:paddingStart="8dp"
+            android:text="乐谱勋章"
+            android:textColor="@color/color_333333"
+            android:textSize="@dimen/sp_16"
+            android:textStyle="bold"
+            app:layout_constraintBottom_toBottomOf="@+id/iv_music_sheet_badge"
+            app:layout_constraintLeft_toRightOf="@+id/iv_music_sheet_badge"
+            app:layout_constraintTop_toTopOf="@+id/iv_music_sheet_badge" />
+
+        <TextView
+            android:id="@+id/tv_music_sheet_badge_des1"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="9dp"
+            android:text="此勋章为"
+            android:textColor="@color/color_666666"
+            android:textSize="@dimen/sp_12"
+            app:layout_constraintLeft_toLeftOf="@+id/iv_music_sheet_badge"
+            app:layout_constraintTop_toBottomOf="@+id/iv_music_sheet_badge" />
+
+        <TextView
+            android:id="@+id/tv_music_sheet_badge_des2"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="完成「乐谱上传」"
+            android:textColor="@color/color_666666"
+            android:textSize="@dimen/sp_12"
+            android:textStyle="bold"
+            app:layout_constraintBottom_toBottomOf="@+id/tv_music_sheet_badge_des1"
+            app:layout_constraintLeft_toRightOf="@+id/tv_music_sheet_badge_des1"
+            app:layout_constraintTop_toTopOf="@+id/tv_music_sheet_badge_des1" />
+
+        <TextView
+            android:id="@+id/tv_music_sheet_badge_des3"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="后会点亮。"
+            android:textColor="@color/color_666666"
+            android:textSize="@dimen/sp_12"
+            app:layout_constraintBottom_toBottomOf="@+id/tv_music_sheet_badge_des1"
+            app:layout_constraintLeft_toRightOf="@+id/tv_music_sheet_badge_des2"
+            app:layout_constraintTop_toTopOf="@+id/tv_music_sheet_badge_des1" />
+    </androidx.constraintlayout.widget.ConstraintLayout>
+
+    <ImageView
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:src="@drawable/icon_badge_des_header"
+        app:layout_constraintLeft_toLeftOf="parent"
+        app:layout_constraintRight_toRightOf="parent"
+        app:layout_constraintTop_toTopOf="parent" />
+
+    <ImageView
+        android:id="@+id/iv_close"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="18dp"
+        android:src="@drawable/icon_close_dialog_white"
+        app:layout_constraintLeft_toLeftOf="parent"
+        app:layout_constraintRight_toRightOf="parent"
+        app:layout_constraintTop_toBottomOf="@+id/cs_content" />
+
+</androidx.constraintlayout.widget.ConstraintLayout>

+ 8 - 0
teacher/src/main/res/layout/fragment_new_home_layout.xml

@@ -177,6 +177,14 @@
                     app:layout_constraintLeft_toRightOf="@+id/iv_live_badge"
                     app:layout_constraintTop_toTopOf="@+id/iv_live_badge" />
 
+                <View
+                    android:id="@+id/view_badge"
+                    app:layout_constraintBottom_toBottomOf="@+id/iv_style_badge"
+                    app:layout_constraintTop_toTopOf="@+id/iv_style_badge"
+                    app:layout_constraintLeft_toLeftOf="@+id/iv_style_badge"
+                    app:layout_constraintRight_toRightOf="@+id/iv_album_badge"
+                    android:layout_width="0dp"
+                    android:layout_height="25dp"/>
 
                 <TextView
                     android:id="@+id/tv_medal_name"