|
@@ -1,5 +1,6 @@
|
|
|
package com.cooleshow.teacher.ui.main;
|
|
|
|
|
|
+import android.content.Intent;
|
|
|
import android.text.TextUtils;
|
|
|
import android.view.Gravity;
|
|
|
import android.view.View;
|
|
@@ -67,6 +68,7 @@ import java.util.Date;
|
|
|
import java.util.List;
|
|
|
|
|
|
import androidx.annotation.NonNull;
|
|
|
+import androidx.annotation.Nullable;
|
|
|
import androidx.fragment.app.Fragment;
|
|
|
import androidx.recyclerview.widget.LinearLayoutManager;
|
|
|
|
|
@@ -76,6 +78,7 @@ import androidx.recyclerview.widget.LinearLayoutManager;
|
|
|
public class NewHomeFragment extends BaseMVPFragment<FragmentNewHomeLayoutBinding, HomePresenter> implements HomeContract.HomeView, View.OnClickListener {
|
|
|
public static final int MAX_HOT_MUSIC_LIST_PAGE = 4;//热门曲目一页最大条数
|
|
|
public static final int MAX_GOOD_MUSIC_LIST_PAGE = 4;//精品曲目一页最大条数
|
|
|
+ public static final int SELECT_SUBJECT_REQUEST_CODE = 1001;//获取乐器筛选条件
|
|
|
public static final String STYLE_TYPE = "STYLE";
|
|
|
public static final String VIDEON_TYPE = "VIDEO";
|
|
|
public static final String LIVE_TYPE = "LIVE";
|
|
@@ -94,9 +97,6 @@ public class NewHomeFragment extends BaseMVPFragment<FragmentNewHomeLayoutBindin
|
|
|
private SmartRefreshLayout refreshLayout;
|
|
|
private HomeHotMusicSheetAdapter mRecommendAdapter;
|
|
|
private HomeHotMusicSheetAdapter mLatestAdapter;
|
|
|
- private OptionsPickerView pvOptions;
|
|
|
- private List<SubjectBean> subjectBeanList = new ArrayList<>();
|
|
|
- private int currentSelectSubjectPosition = 0;
|
|
|
private String currentSubjectId = "";
|
|
|
|
|
|
@Override
|
|
@@ -157,7 +157,6 @@ public class NewHomeFragment extends BaseMVPFragment<FragmentNewHomeLayoutBindin
|
|
|
//banner自带图片轮播的适配器
|
|
|
mViewBinding.banner.setAdapter(mBannerImageAdapter, true);
|
|
|
initListener();
|
|
|
- presenter.queryAllSubjects();
|
|
|
}
|
|
|
|
|
|
|
|
@@ -184,7 +183,6 @@ public class NewHomeFragment extends BaseMVPFragment<FragmentNewHomeLayoutBindin
|
|
|
mViewBinding.tvCurrentSubject.setOnClickListener(this);
|
|
|
mViewBinding.refreshLayout.setOnRefreshListener(refreshLayout -> {
|
|
|
mViewBinding.refreshLayout.finishRefresh();
|
|
|
- presenter.queryAllSubjects();//查询所有声部
|
|
|
refreshMusicData();
|
|
|
presenter.queryCountOfUnread();
|
|
|
presenter.queryLiveAndVideo();
|
|
@@ -514,29 +512,6 @@ public class NewHomeFragment extends BaseMVPFragment<FragmentNewHomeLayoutBindin
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
- public void subjectSelectSuccess(List<TeachableInstrumentBean> data) {
|
|
|
- if (isDetached() || !isAdded()) {
|
|
|
- return;
|
|
|
- }
|
|
|
- //添加所有声部
|
|
|
- subjectBeanList.clear();
|
|
|
- if (data != null && data.size() > 0) {
|
|
|
- for (int i = 0; i < data.size(); i++) {
|
|
|
- TeachableInstrumentBean teachableInstrumentBean = data.get(i);
|
|
|
- SubjectBean subjectBean = new SubjectBean(teachableInstrumentBean.name, String.valueOf(teachableInstrumentBean.id));
|
|
|
- subjectBeanList.add(subjectBean);
|
|
|
- if( teachableInstrumentBean.subjects!=null && teachableInstrumentBean.subjects.size()>0){
|
|
|
- for (int j = 0; j < teachableInstrumentBean.subjects.size(); j++) {
|
|
|
- TeachableInstrumentBean child = teachableInstrumentBean.subjects.get(j);
|
|
|
- SubjectBean childSubjectBean = new SubjectBean(child.name, String.valueOf(child.id));
|
|
|
- subjectBeanList.add(childSubjectBean);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
private void showAwardTipDialog() {
|
|
|
if (UserHelper.getShowAwardDialogTipIsCompleted()) {
|
|
|
return;
|
|
@@ -768,36 +743,32 @@ public class NewHomeFragment extends BaseMVPFragment<FragmentNewHomeLayoutBindin
|
|
|
badgeDesDialog.show();
|
|
|
}
|
|
|
|
|
|
- private void selectSubject() {
|
|
|
- if (subjectBeanList.size() == 0) {
|
|
|
- subjectBeanList.add(new SubjectBean("全部", ""));
|
|
|
- }
|
|
|
- pvOptions = new OptionsPickerBuilder(getContext(), (options1, options2, options3, v) -> {
|
|
|
- this.currentSelectSubjectPosition = options1;
|
|
|
- SubjectBean bean = subjectBeanList.get(options1);
|
|
|
- currentSubjectId = bean.id;
|
|
|
- mViewBinding.tvCurrentSubject.setText(bean.name);
|
|
|
- if (presenter != null) {
|
|
|
- //同步选中id
|
|
|
- presenter.syncSubjectFilter(currentSubjectId);
|
|
|
+ @Override
|
|
|
+ public void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
|
|
|
+ super.onActivityResult(requestCode, resultCode, data);
|
|
|
+ if (requestCode == SELECT_SUBJECT_REQUEST_CODE) {
|
|
|
+ try {
|
|
|
+ List<TeachableInstrumentBean> selectTeachableInstrument = (List<TeachableInstrumentBean>) data.getSerializableExtra("selectTeachableInstrument");
|
|
|
+ if (selectTeachableInstrument != null && selectTeachableInstrument.size() > 0) {
|
|
|
+ TeachableInstrumentBean teachableInstrumentBean = selectTeachableInstrument.get(0);
|
|
|
+ currentSubjectId = String.valueOf(teachableInstrumentBean.id);
|
|
|
+ mViewBinding.tvCurrentSubject.setText(teachableInstrumentBean.name);
|
|
|
+ if (presenter != null) {
|
|
|
+ //同步选中id
|
|
|
+ presenter.syncSubjectFilter(currentSubjectId);
|
|
|
+ }
|
|
|
+ refreshMusicData();
|
|
|
+ }
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
}
|
|
|
- refreshMusicData();
|
|
|
- }).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(v12 -> {
|
|
|
- pvOptions.returnData();
|
|
|
- pvOptions.dismiss();
|
|
|
- });
|
|
|
- ivCancel.setOnClickListener(v1 -> pvOptions.dismiss());
|
|
|
-
|
|
|
- }).isDialog(false).build();
|
|
|
- pvOptions.setPicker(subjectBeanList);
|
|
|
- if (currentSelectSubjectPosition < subjectBeanList.size()) {
|
|
|
- pvOptions.setSelectOptions(currentSelectSubjectPosition);
|
|
|
- }
|
|
|
- pvOptions.show();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ private void selectSubject() {
|
|
|
+ ARouter.getInstance().build(RouterPath.MineCenter.MINE_TEACHABLE_INSTRUMENT)
|
|
|
+ .withBoolean("isSingleSelect", true)
|
|
|
+ .navigation(getActivity(), SELECT_SUBJECT_REQUEST_CODE);
|
|
|
}
|
|
|
|
|
|
/**
|