Bladeren bron

修改老师主页乐谱声部筛选样式

Pq 2 jaren geleden
bovenliggende
commit
f7817dafbd
1 gewijzigde bestanden met toevoegingen van 32 en 14 verwijderingen
  1. 32 14
      teacher/src/main/java/com/cooleshow/teacher/ui/homepage/SheetMusicPageFragment.java

+ 32 - 14
teacher/src/main/java/com/cooleshow/teacher/ui/homepage/SheetMusicPageFragment.java

@@ -2,8 +2,11 @@ package com.cooleshow.teacher.ui.homepage;
 
 import android.text.TextUtils;
 import android.view.View;
+import android.widget.TextView;
 
 import com.alibaba.android.arouter.launcher.ARouter;
+import com.bigkoo.pickerview.builder.OptionsPickerBuilder;
+import com.bigkoo.pickerview.view.OptionsPickerView;
 import com.chad.library.adapter.base.BaseQuickAdapter;
 import com.chad.library.adapter.base.listener.OnItemClickListener;
 import com.chad.library.adapter.base.listener.OnLoadMoreListener;
@@ -49,6 +52,8 @@ public class SheetMusicPageFragment extends BaseMVPFragment<FragmentSheetMusicPa
     private int currentSubjectId = 0;
     private String mIdNames;
     private String teacherCertStatus = TeacherInfoConstants.ENTRY_STATUS_UNPAALY;
+    private OptionsPickerView pvOptions;
+    private int currentSelectSubjectPosition = 0;
 
     @Override
     protected void initView(View rootView) {
@@ -157,25 +162,38 @@ public class SheetMusicPageFragment extends BaseMVPFragment<FragmentSheetMusicPa
             popMenuBean.setActionName(bean.name);
             popList.add(popMenuBean);
         }
-        initCoursePop(mViewBinding.searchView, popList, position -> {
-            QuerySubjectBean bean = subjectBeanList.get(position);
+        selectSubject();
+    }
+
+
+    private void selectSubject() {
+        if (subjectBeanList.size() == 0) {
+            subjectBeanList.add(new QuerySubjectBean("声部", 0));
+        }
+        pvOptions = new OptionsPickerBuilder(getContext(), (options1, options2, options3, v) -> {
+            this.currentSelectSubjectPosition = options1;
+            QuerySubjectBean bean = subjectBeanList.get(options1);
             currentSubjectId = bean.id;
             currentPage = 1;
             mViewBinding.searchView.getLeftText().setText(bean.name);
             queryList(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(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();
 
-    /**
-     * 选择声部pop
-     *
-     * @param targetView
-     * @param popList
-     * @param listener
-     */
-    private void initCoursePop(View targetView, List<PopMenuBean> popList, PopupListWindow.PopupListListener listener) {
-        PopupListWindow popWindow = new PopupListWindow(getContext());
-        popWindow.showListPop(targetView, popList, position -> listener.onPopupListClick(position));
     }
 
     private void queryList(boolean isShowLoading) {