From 92c64518167ec4f4ce93e77e533898c164d2cf03 Mon Sep 17 00:00:00 2001
From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期一, 27 三月 2017 16:51:51 +0800
Subject: [PATCH] 

---
 VisitFace/DemoForBsk/app/src/main/java/com/bsk/zhangbo/demoforbsk/widget/SingleSelectionPopup.java |   33 +++++++++++++++++++++++++++++----
 1 files changed, 29 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..13eb0ff 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,18 @@
                 dismiss();
                 break;
             case R.id.pop_single_confirm:
+                for (OkButtonClickedListener okButtonClickedListener : okButtonClickedListeners) {
+                    if (mWheelView.getCurrentPosition() >= 0) {
+                        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 +130,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