|
@@ -65,6 +65,7 @@ public class MinePracticeCourseFragment extends BaseMVPFragment<FragmentPractice
|
|
|
private PopupWindow mPopupWindow;
|
|
|
private ArrayList<CourseFilterStatusBean> mCourseFilterStatusBeans;
|
|
|
private CourseStatusFilterAdapter mCourseStatusFilterAdapter;
|
|
|
+ private boolean isFirstLoad = true;
|
|
|
|
|
|
|
|
|
public static MinePracticeCourseFragment newInstance() {
|
|
@@ -101,12 +102,27 @@ public class MinePracticeCourseFragment extends BaseMVPFragment<FragmentPractice
|
|
|
|
|
|
@Override
|
|
|
protected void initView(View rootView) {
|
|
|
-
|
|
|
mViewBinding.tvTime.setOnClickListener(this);
|
|
|
mViewBinding.tvCourseStatus.setOnClickListener(this);
|
|
|
mViewBinding.tvAgency.setOnClickListener(this);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public void onResume() {
|
|
|
+ super.onResume();
|
|
|
+ if (isFirstLoad) {
|
|
|
+ isFirstLoad = false;
|
|
|
+ reBuildFilter(null, CourseConstants.COURSE_FILTER_ALL);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void refreshData() {
|
|
|
+ super.refreshData();
|
|
|
+ reBuildFilter(currentSelectDate, currentCourseFilterStatus);
|
|
|
+ isFirstLoad = false;
|
|
|
+ }
|
|
|
+
|
|
|
private void buildDefaultCourseStatusFilterList() {
|
|
|
mCourseFilterStatusBeans = new ArrayList<>();
|
|
|
mCourseFilterStatusBeans.add(new CourseFilterStatusBean(CourseConstants.COURSE_FILTER_ALL, "全部"));
|
|
@@ -140,38 +156,31 @@ public class MinePracticeCourseFragment extends BaseMVPFragment<FragmentPractice
|
|
|
});
|
|
|
|
|
|
mAdapter = new PracticeCourseListAdapter(R.layout.item_sparring_course_list_layout);
|
|
|
- mAdapter.getLoadMoreModule().setOnLoadMoreListener(new OnLoadMoreListener() {
|
|
|
- @Override
|
|
|
- public void onLoadMore() {
|
|
|
- //上拉加载
|
|
|
- if (hasNext) {
|
|
|
- currentPage++;
|
|
|
- queryCourse(false);
|
|
|
- } else {
|
|
|
- mAdapter.getLoadMoreModule().loadMoreEnd();
|
|
|
- }
|
|
|
+ mAdapter.getLoadMoreModule().setOnLoadMoreListener(() -> {
|
|
|
+ //上拉加载
|
|
|
+ if (hasNext) {
|
|
|
+ currentPage++;
|
|
|
+ queryCourse(false);
|
|
|
+ } else {
|
|
|
+ mAdapter.getLoadMoreModule().loadMoreEnd();
|
|
|
}
|
|
|
});
|
|
|
- mAdapter.setOnItemClickListener(new OnItemClickListener() {
|
|
|
- @Override
|
|
|
- public void onItemClick(@NonNull BaseQuickAdapter<?, ?> adapter, @NonNull View view, int position) {
|
|
|
- if (position < mAdapter.getData().size()) {
|
|
|
- PracticeCourseListBean.RowsBean rowsBean = mAdapter.getData().get(position);
|
|
|
- if (rowsBean != null) {
|
|
|
- ARouter.getInstance()
|
|
|
- .build(RouterPath.CourseCenter.SPARRING_COURSE_DETAIL)
|
|
|
- .withString(SparringCourseDetailActivity.COURSE_ID, rowsBean.courseId)
|
|
|
- .withString(SparringCourseDetailActivity.COURSE_GROUP_ID, rowsBean.courseGoupId)
|
|
|
- .withString(SparringCourseDetailActivity.STUDENT_ID, rowsBean.userId)
|
|
|
- .navigation();
|
|
|
- }
|
|
|
+ mAdapter.setOnItemClickListener((adapter, view, position) -> {
|
|
|
+ if (position < mAdapter.getData().size()) {
|
|
|
+ PracticeCourseListBean.RowsBean rowsBean = mAdapter.getData().get(position);
|
|
|
+ if (rowsBean != null) {
|
|
|
+ ARouter.getInstance()
|
|
|
+ .build(RouterPath.CourseCenter.SPARRING_COURSE_DETAIL)
|
|
|
+ .withString(SparringCourseDetailActivity.COURSE_ID, rowsBean.courseId)
|
|
|
+ .withString(SparringCourseDetailActivity.COURSE_GROUP_ID, rowsBean.courseGoupId)
|
|
|
+ .withString(SparringCourseDetailActivity.STUDENT_ID, rowsBean.userId)
|
|
|
+ .navigation();
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
mViewBinding.recyclerView.setLayoutManager(new LinearLayoutManager(requireContext()));
|
|
|
mViewBinding.recyclerView.setAdapter(mAdapter);
|
|
|
buildDefaultCourseStatusFilterList();
|
|
|
- reBuildFilter(null, CourseConstants.COURSE_FILTER_ALL);
|
|
|
presenter.querySubjectItem();
|
|
|
}
|
|
|
|
|
@@ -242,7 +251,7 @@ public class MinePracticeCourseFragment extends BaseMVPFragment<FragmentPractice
|
|
|
@Override
|
|
|
public void querySubjectItemSuccess(List<QuerySubjectBean> data) {
|
|
|
subjectBeanList.clear();
|
|
|
- subjectBeanList.add(new QuerySubjectBean("全部声部",0));
|
|
|
+ subjectBeanList.add(new QuerySubjectBean("全部声部", 0));
|
|
|
subjectBeanList.addAll(data);
|
|
|
}
|
|
|
|
|
@@ -259,27 +268,27 @@ public class MinePracticeCourseFragment extends BaseMVPFragment<FragmentPractice
|
|
|
pvTime = new TimePickerBuilder(requireContext(), (date, v) -> {//选中事件回调
|
|
|
reBuildFilter(date, currentCourseFilterStatus);
|
|
|
}).setLayoutRes(com.cooleshow.base.R.layout.pickerview_default_layout, new CustomListener() {
|
|
|
+ @Override
|
|
|
+ public void customLayout(View v) {
|
|
|
+ //自定义布局中的控件初始化及事件处理
|
|
|
+ final TextView tvSubmit = (TextView) v.findViewById(com.cooleshow.base.R.id.tv_finish);
|
|
|
+ TextView ivCancel = (TextView) v.findViewById(com.cooleshow.base.R.id.tv_cancel);
|
|
|
+ tvSubmit.setOnClickListener(new View.OnClickListener() {
|
|
|
@Override
|
|
|
- public void customLayout(View v) {
|
|
|
- //自定义布局中的控件初始化及事件处理
|
|
|
- final TextView tvSubmit = (TextView) v.findViewById(com.cooleshow.base.R.id.tv_finish);
|
|
|
- TextView ivCancel = (TextView) v.findViewById(com.cooleshow.base.R.id.tv_cancel);
|
|
|
- tvSubmit.setOnClickListener(new View.OnClickListener() {
|
|
|
- @Override
|
|
|
- public void onClick(View v) {
|
|
|
- pvTime.returnData();
|
|
|
- pvTime.dismiss();
|
|
|
- }
|
|
|
- });
|
|
|
- ivCancel.setOnClickListener(new View.OnClickListener() {
|
|
|
- @Override
|
|
|
- public void onClick(View v) {
|
|
|
- pvTime.dismiss();
|
|
|
- }
|
|
|
- });
|
|
|
-
|
|
|
+ public void onClick(View v) {
|
|
|
+ pvTime.returnData();
|
|
|
+ pvTime.dismiss();
|
|
|
}
|
|
|
- })
|
|
|
+ });
|
|
|
+ ivCancel.setOnClickListener(new View.OnClickListener() {
|
|
|
+ @Override
|
|
|
+ public void onClick(View v) {
|
|
|
+ pvTime.dismiss();
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ }
|
|
|
+ })
|
|
|
.setLineSpacingMultiplier(2.5f)
|
|
|
.setType(new boolean[]{true, true, false, false, false, false})// 默认全部显示
|
|
|
.setTextColorCenter(getResources().getColor(com.cooleshow.base.R.color.color_1a1a1a))//设置选中项的颜色
|
|
@@ -332,41 +341,28 @@ public class MinePracticeCourseFragment extends BaseMVPFragment<FragmentPractice
|
|
|
}
|
|
|
mPopupWindow.showAsDropDown(targetView);
|
|
|
}
|
|
|
+
|
|
|
private OptionsPickerView pvOptions;
|
|
|
- private void selectSubject() {
|
|
|
- pvOptions = new OptionsPickerBuilder(getContext(), new OnOptionsSelectListener() {
|
|
|
- @Override
|
|
|
- public void onOptionsSelect(int options1, int options2, int options3, View v) {
|
|
|
- currentSubjectId=subjectBeanList.get(options1).id;
|
|
|
- mViewBinding.tvAgency.setText(subjectBeanList.get(options1).name);
|
|
|
- queryCourse(true);
|
|
|
|
|
|
- }
|
|
|
- })
|
|
|
- .setLayoutRes(R.layout.pickerview_address_layout, new CustomListener() {
|
|
|
- @Override
|
|
|
- public void customLayout(View v) {
|
|
|
- //自定义布局中的控件初始化及事件处理
|
|
|
- final TextView tvSubmit = (TextView) v.findViewById(com.cooleshow.base.R.id.tv_finish);
|
|
|
- TextView ivCancel = (TextView) v.findViewById(com.cooleshow.base.R.id.tv_cancel);
|
|
|
- tvSubmit.setOnClickListener(new View.OnClickListener() {
|
|
|
- @Override
|
|
|
- public void onClick(View v) {
|
|
|
- pvOptions.returnData();
|
|
|
- pvOptions.dismiss();
|
|
|
- }
|
|
|
- });
|
|
|
- ivCancel.setOnClickListener(new View.OnClickListener() {
|
|
|
- @Override
|
|
|
- public void onClick(View v) {
|
|
|
- pvOptions.dismiss();
|
|
|
- }
|
|
|
- });
|
|
|
+ private void selectSubject() {
|
|
|
+ pvOptions = new OptionsPickerBuilder(getContext(), (options1, options2, options3, v) -> {
|
|
|
+ currentSubjectId = subjectBeanList.get(options1).id;
|
|
|
+ mViewBinding.tvAgency.setText(subjectBeanList.get(options1).name);
|
|
|
+ queryCourse(true);
|
|
|
+ }).setLayoutRes(R.layout.pickerview_address_layout, v -> {
|
|
|
+ //自定义布局中的控件初始化及事件处理
|
|
|
+ final TextView tvSubmit = (TextView) v.findViewById(com.cooleshow.base.R.id.tv_finish);
|
|
|
+ TextView ivCancel = (TextView) v.findViewById(com.cooleshow.base.R.id.tv_cancel);
|
|
|
+ tvSubmit.setOnClickListener(new View.OnClickListener() {
|
|
|
+ @Override
|
|
|
+ public void onClick(View v) {
|
|
|
+ pvOptions.returnData();
|
|
|
+ pvOptions.dismiss();
|
|
|
+ }
|
|
|
+ });
|
|
|
+ ivCancel.setOnClickListener(v1 -> pvOptions.dismiss());
|
|
|
|
|
|
- }
|
|
|
- })
|
|
|
- .isDialog(false)
|
|
|
- .build();
|
|
|
+ }).isDialog(false).build();
|
|
|
pvOptions.setPicker(subjectBeanList);
|
|
|
pvOptions.show();
|
|
|
|