|  | @@ -18,6 +18,9 @@ import androidx.viewpager.widget.ViewPager;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  import com.alibaba.android.arouter.facade.annotation.Route;
 | 
	
		
			
				|  |  |  import com.alibaba.android.arouter.launcher.ARouter;
 | 
	
		
			
				|  |  | +import com.bigkoo.pickerview.builder.OptionsPickerBuilder;
 | 
	
		
			
				|  |  | +import com.bigkoo.pickerview.listener.OnDismissListener;
 | 
	
		
			
				|  |  | +import com.bigkoo.pickerview.view.OptionsPickerView;
 | 
	
		
			
				|  |  |  import com.cooleshow.base.router.RouterPath;
 | 
	
		
			
				|  |  |  import com.cooleshow.base.ui.activity.BaseMVPActivity;
 | 
	
		
			
				|  |  |  import com.cooleshow.base.utils.FileUtils;
 | 
	
	
		
			
				|  | @@ -100,6 +103,8 @@ public class MineScoreActivity extends BaseMVPActivity<ActivityMineScoreBinding,
 | 
	
		
			
				|  |  |      private ShareAction mShareAction;
 | 
	
		
			
				|  |  |      private UMShareListener mShareListener;
 | 
	
		
			
				|  |  |      private Bitmap targetBitmap;
 | 
	
		
			
				|  |  | +    private OptionsPickerView pvOptions;
 | 
	
		
			
				|  |  | +    private int currentSelectSubjectPosition = 0;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  |      public void onClick(View view) {
 | 
	
	
		
			
				|  | @@ -171,21 +176,50 @@ public class MineScoreActivity extends BaseMVPActivity<ActivityMineScoreBinding,
 | 
	
		
			
				|  |  |          if (subjectBeanList.size() == 0) {
 | 
	
		
			
				|  |  |              subjectBeanList.add(new QuerySubjectBean("全部声部", ""));
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -        List<PopMenuBean> popList = new ArrayList<>();
 | 
	
		
			
				|  |  | -        for (QuerySubjectBean bean : subjectBeanList) {
 | 
	
		
			
				|  |  | -            PopMenuBean popMenuBean = new PopMenuBean();
 | 
	
		
			
				|  |  | -            popMenuBean.setActionName(bean.name);
 | 
	
		
			
				|  |  | -            popList.add(popMenuBean);
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -        initCoursePop(viewBinding.viewSubjectFilterPoint, popList, position -> {
 | 
	
		
			
				|  |  | -            QuerySubjectBean bean = subjectBeanList.get(position);
 | 
	
		
			
				|  |  | +        selectSubject();
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    private void selectSubject() {
 | 
	
		
			
				|  |  | +        pvOptions = new OptionsPickerBuilder(this, (options1, options2, options3, v) -> {
 | 
	
		
			
				|  |  | +            this.currentSelectSubjectPosition = options1;
 | 
	
		
			
				|  |  | +            QuerySubjectBean bean = subjectBeanList.get(options1);
 | 
	
		
			
				|  |  |              currentSubjectId = String.valueOf(bean.id);
 | 
	
		
			
				|  |  |              viewBinding.searchView.getLeftText().setText(bean.name);
 | 
	
		
			
				|  |  |              updateByFilter();
 | 
	
		
			
				|  |  | +        }).setLayoutRes(com.cooleshow.base.R.layout.pickerview_address_layout, v -> {
 | 
	
		
			
				|  |  | +                    //自定义布局中的控件初始化及事件处理
 | 
	
		
			
				|  |  | +                    final TextView tvSubmit = (TextView) v.findViewById(com.cooleshow.base.R.id.tv_finish);
 | 
	
		
			
				|  |  | +                    tvSubmit.setText(getString(com.cooleshow.base.R.string.confirm_str));
 | 
	
		
			
				|  |  | +                    TextView ivCancel = (TextView) v.findViewById(com.cooleshow.base.R.id.tv_cancel);
 | 
	
		
			
				|  |  | +                    tvSubmit.setOnClickListener(v12 -> {
 | 
	
		
			
				|  |  | +                        pvOptions.returnData();
 | 
	
		
			
				|  |  | +                        pvOptions.dismiss();
 | 
	
		
			
				|  |  | +                    });
 | 
	
		
			
				|  |  | +                    ivCancel.setOnClickListener(v1 -> pvOptions.dismiss());
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                }).setTextColorOut(getResources().getColor(com.cooleshow.base.R.color.color_aaaaaa))
 | 
	
		
			
				|  |  | +                .setDividerColor(Color.TRANSPARENT)
 | 
	
		
			
				|  |  | +                .setBgColor(Color.TRANSPARENT).isDialog(false).build();
 | 
	
		
			
				|  |  | +        pvOptions.setPicker(subjectBeanList);
 | 
	
		
			
				|  |  | +        if (currentSelectSubjectPosition < subjectBeanList.size()) {
 | 
	
		
			
				|  |  | +            pvOptions.setSelectOptions(currentSelectSubjectPosition);
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +        pvOptions.setOnDismissListener(new OnDismissListener() {
 | 
	
		
			
				|  |  | +            @Override
 | 
	
		
			
				|  |  | +            public void onDismiss(Object o) {
 | 
	
		
			
				|  |  | +                UiUtils.refreshFilterTextStyle2(false, viewBinding.searchView.getLeftText());
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            @Override
 | 
	
		
			
				|  |  | +            public void onShow() {
 | 
	
		
			
				|  |  | +                UiUtils.refreshFilterTextStyle2(true, viewBinding.searchView.getLeftText());
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  |          });
 | 
	
		
			
				|  |  | +        pvOptions.show();
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      private void updateByFilter() {
 | 
	
		
			
				|  |  | +        viewBinding.searchView.clearEditFocus();
 | 
	
		
			
				|  |  |          int currentItem = viewPager.getCurrentItem();
 | 
	
		
			
				|  |  |          for (int i = 0; i < fragments.size(); i++) {
 | 
	
		
			
				|  |  |              MineScoreFragment mineScoreFragment = (MineScoreFragment) fragments.get(i);
 |