From 1c0f255b682a3ff33804f177f5936eb0624555c8 Mon Sep 17 00:00:00 2001 From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674> Date: 星期四, 23 三月 2017 13:56:55 +0800 Subject: [PATCH] --- VisitFace/DemoForBsk/app/src/main/java/com/bsk/zhangbo/demoforbsk/widget/SingleSelectionPopup.java | 31 +++++++++++++++++++++++++++---- 1 files changed, 27 insertions(+), 4 deletions(-) diff --git a/VisitFace/DemoForBsk/app/src/main/java/com/bsk/zhangbo/demoforbsk/widget/SingleSelectionPopup.java b/VisitFace/DemoForBsk/app/src/main/java/com/bsk/zhangbo/demoforbsk/widget/SingleSelectionPopup.java index d778cce..552d4a3 100644 --- a/VisitFace/DemoForBsk/app/src/main/java/com/bsk/zhangbo/demoforbsk/widget/SingleSelectionPopup.java +++ b/VisitFace/DemoForBsk/app/src/main/java/com/bsk/zhangbo/demoforbsk/widget/SingleSelectionPopup.java @@ -13,9 +13,13 @@ import com.bsk.zhangbo.demoforbsk.R; import com.bsk.zhangbo.demoforbsk.adapter.MyWheelAdapter; +import com.bsk.zhangbo.demoforbsk.listeners.OkButtonClickedListener; import com.wx.wheelview.widget.WheelView; +import java.util.ArrayList; import java.util.List; + +import cn.com.basic.face.discern.entity.Dictionary; /** * Created by Sinoe on 2017/2/27. @@ -24,10 +28,10 @@ public class SingleSelectionPopup extends PopupWindow implements View.OnClickListener,WheelView.OnWheelItemSelectedListener{ private View view; private TextView mTvConfirm,mTvCancel,mTvTitle; - private List<String> mList; + private List mList; private WheelView mWheelView; private Context mContext; - public SingleSelectionPopup(Context context, List<String> mList,String mTitle) { + public SingleSelectionPopup(Context context, List mList,String mTitle) { this.mContext = context; view = LayoutInflater.from(context).inflate(R.layout.pop_single_selection,null); this.mList = mList; @@ -45,7 +49,9 @@ mTvConfirm.setOnClickListener(this); mWheelView.setWheelAdapter(new MyWheelAdapter(context)); mWheelView.setSkin(WheelView.Skin.Holo); - mWheelView.setWheelData(mList); + if (mList != null && mList.size() > 0) { + mWheelView.setWheelData(mList); + } mWheelView.setWheelSize(5); mWheelView.setBackgroundResource(R.color.colorBackground); WheelView.WheelViewStyle style = new WheelView.WheelViewStyle(); @@ -105,6 +111,16 @@ dismiss(); break; case R.id.pop_single_confirm: + for (OkButtonClickedListener okButtonClickedListener : okButtonClickedListeners) { + Object o = mList.get(mWheelView.getCurrentPosition()); + String item = ""; + if (o instanceof Dictionary) { + item = ((Dictionary) o).getName(); + } else { + item = o+""; + } + okButtonClickedListener.onItemSelected(mWheelView.getCurrentPosition(), o, item); + } dismiss(); break; } @@ -112,6 +128,13 @@ @Override public void onItemSelected(int position, Object o) { - Toast.makeText(mContext,mList.get(position),Toast.LENGTH_SHORT).show(); + //Toast.makeText(mContext,mList.get(position),Toast.LENGTH_SHORT).show(); } + + private List<OkButtonClickedListener> okButtonClickedListeners = new ArrayList<OkButtonClickedListener>(); + + public void addOkButtonClickedListener(OkButtonClickedListener okButtonClickedListener) { + this.okButtonClickedListeners.add(okButtonClickedListener); + } + } -- Gitblit v1.8.0