|
@@ -8,10 +8,12 @@ import android.view.View;
|
|
|
import android.widget.TextView;
|
|
|
|
|
|
import com.alibaba.android.arouter.facade.annotation.Route;
|
|
|
+import com.cooleshow.base.bean.CourseTipBean;
|
|
|
import com.cooleshow.base.router.RouterPath;
|
|
|
import com.cooleshow.base.ui.activity.BaseMVPActivity;
|
|
|
import com.cooleshow.base.ui.fragment.BaseMVPFragment;
|
|
|
import com.cooleshow.base.utils.helper.QMUIStatusBarHelper;
|
|
|
+import com.cooleshow.base.widgets.dialog.CourseTipDialog;
|
|
|
import com.cooleshow.teacher.R;
|
|
|
import com.cooleshow.teacher.adapter.MineCoursePageAdapter;
|
|
|
import com.cooleshow.teacher.bean.QuerySubjectBean;
|
|
@@ -34,15 +36,17 @@ import androidx.viewpager2.widget.ViewPager2;
|
|
|
* Author by pq, Date on 2022/4/25.
|
|
|
*/
|
|
|
@Route(path = RouterPath.CourseCenter.TEACHER_MINE_COURSE)
|
|
|
-public class MineCourseActivity extends BaseMVPActivity<ActivityMineCourseLayoutBinding, MineCoursePresenter> implements MineCourseContract.MineCourseView {
|
|
|
+public class MineCourseActivity extends BaseMVPActivity<ActivityMineCourseLayoutBinding, MineCoursePresenter> implements MineCourseContract.MineCourseView, View.OnClickListener {
|
|
|
public static final String SELECT_POSITION = "selectPosition";
|
|
|
- private List<String> titles = new ArrayList<String>(Arrays.asList("VIP定制课","趣纠课", "直播课", "视频课", "琴房课"));
|
|
|
+ private List<String> titles = new ArrayList<String>(Arrays.asList("VIP定制课", "趣纠课", "直播课", "视频课", "琴房课"));
|
|
|
private ArrayList<Fragment> mFragments = new ArrayList<>();
|
|
|
private LiveCourseGroupFragment mLiveCourseFragment;
|
|
|
private VideoCourseGroupFragment mVideoCourseFragment;
|
|
|
private PianoCourseGroupFragment mPianoRoomCourseGroupFragment;
|
|
|
private VIPCourseGroupFragment mVipCourseFragment;
|
|
|
private InterestCourseGroupFragment mInterestCourseGroupFragment;
|
|
|
+ private CourseTipDialog mCourseTipDialog;
|
|
|
+ private ArrayList<CourseTipBean> courseTipList;
|
|
|
|
|
|
@Override
|
|
|
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
|
@@ -60,7 +64,9 @@ public class MineCourseActivity extends BaseMVPActivity<ActivityMineCourseLayout
|
|
|
protected void initView() {
|
|
|
initMidTitleToolBar(viewBinding.toolbarInclude.toolbar, "我的课程");
|
|
|
viewBinding.toolbarInclude.toolbar.setBackgroundColor(Color.TRANSPARENT);
|
|
|
-
|
|
|
+ viewBinding.toolbarInclude.tvRight.setVisibility(View.VISIBLE);
|
|
|
+ viewBinding.toolbarInclude.tvRight.setImageResource(R.drawable.icon_question_mark);
|
|
|
+ viewBinding.toolbarInclude.tvRight.setOnClickListener(this);
|
|
|
}
|
|
|
|
|
|
|
|
@@ -68,9 +74,10 @@ public class MineCourseActivity extends BaseMVPActivity<ActivityMineCourseLayout
|
|
|
public void initData() {
|
|
|
super.initData();
|
|
|
initListener();
|
|
|
+ initCourseTipData();
|
|
|
int selectPosition = getIntent().getIntExtra(SELECT_POSITION, -1);
|
|
|
|
|
|
- TabLayoutMediator tabLayoutMediator = new TabLayoutMediator(viewBinding.tablayout, viewBinding.viewPager, (tab, position) -> {
|
|
|
+ TabLayoutMediator tabLayoutMediator = new TabLayoutMediator(viewBinding.tablayout, viewBinding.viewPager, (tab, position) -> {
|
|
|
//这里需要根据position修改tab的样式和文字等
|
|
|
createTab(tab, titles.get(position));
|
|
|
});
|
|
@@ -101,6 +108,26 @@ public class MineCourseActivity extends BaseMVPActivity<ActivityMineCourseLayout
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private void initCourseTipData() {
|
|
|
+ courseTipList = new ArrayList<>();
|
|
|
+ int[] titles = new int[]{com.cooleshow.base.R.string.vip_course_tip_title,
|
|
|
+ com.cooleshow.base.R.string.interest_course_tip_title,
|
|
|
+ com.cooleshow.base.R.string.live_course_tip_title,
|
|
|
+ com.cooleshow.base.R.string.video_course_tip_title,
|
|
|
+ com.cooleshow.base.R.string.piano_course_tip_title};
|
|
|
+ int[] desDatas = new int[]{com.cooleshow.base.R.string.vip_course_tip_str,
|
|
|
+ com.cooleshow.base.R.string.interest_course_tip_str,
|
|
|
+ com.cooleshow.base.R.string.live_course_tip_str,
|
|
|
+ com.cooleshow.base.R.string.video_course_tip_str,
|
|
|
+ com.cooleshow.base.R.string.piano_course_tip_str};
|
|
|
+ for (int i = 0; i < titles.length; i++) {
|
|
|
+ CourseTipBean courseTipBean = new CourseTipBean();
|
|
|
+ courseTipBean.setTitle(getString(titles[i]));
|
|
|
+ courseTipBean.setDes(getString(desDatas[i]));
|
|
|
+ courseTipList.add(courseTipBean);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
private void initListener() {
|
|
|
viewBinding.tablayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
|
|
|
@Override
|
|
@@ -179,4 +206,26 @@ public class MineCourseActivity extends BaseMVPActivity<ActivityMineCourseLayout
|
|
|
tab.setCustomView(view);
|
|
|
return tab;
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onClick(View v) {
|
|
|
+ int id = v.getId();
|
|
|
+ if (id == com.cooleshow.base.R.id.tv_right) {
|
|
|
+ showTipDialog();
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ private void showTipDialog() {
|
|
|
+ if (mCourseTipDialog == null) {
|
|
|
+ mCourseTipDialog = new CourseTipDialog(this);
|
|
|
+ }
|
|
|
+ if (!mCourseTipDialog.isShowing()) {
|
|
|
+ mCourseTipDialog.show();
|
|
|
+ }
|
|
|
+ //仅显示VIP定制课
|
|
|
+ mCourseTipDialog.showCustomData(courseTipList);
|
|
|
+ int pos = viewBinding.viewPager.getCurrentItem();
|
|
|
+ mCourseTipDialog.setSelect(pos);
|
|
|
+ }
|
|
|
}
|