From b7fd23fb1b9d04eb8fa0d97a5d9747e145605612 Mon Sep 17 00:00:00 2001 From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674> Date: 星期三, 03 五月 2017 14:33:42 +0800 Subject: [PATCH] --- VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/dialog/SelectDialog.java | 70 +++++++++++++++++++++++++++++++++-- 1 files changed, 66 insertions(+), 4 deletions(-) diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/dialog/SelectDialog.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/dialog/SelectDialog.java index 712a315..18166fe 100644 --- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/dialog/SelectDialog.java +++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/dialog/SelectDialog.java @@ -1,25 +1,29 @@ package cn.com.basic.face.dialog; +import android.content.Context; import android.graphics.Color; import android.graphics.drawable.ColorDrawable; import android.view.Gravity; import android.view.LayoutInflater; import android.view.MotionEvent; import android.view.View; +import android.view.ViewGroup; import android.widget.PopupWindow; import android.widget.RelativeLayout; import android.widget.TextView; +import android.widget.Toast; import com.bsk.zhangbo.demoforbsk.R; -import cn.com.basic.face.adapter.MyWheelAdapter; import cn.com.basic.face.base.MainActivity; +import cn.com.basic.face.fragment.CheckInFragment; import cn.com.basic.face.util.Constant; import cn.com.basic.face.util.OkClickedListener; import com.lidroid.xutils.ViewUtils; import com.lidroid.xutils.view.annotation.ViewInject; import com.lidroid.xutils.view.annotation.event.OnClick; -import com.wx.wheelview.widget.WheelView; +import cn.com.basic.face.dialog.wheelview.adapter.BaseWheelAdapter; +import cn.com.basic.face.dialog.wheelview.widget.WheelView; import java.util.ArrayList; import java.util.List; @@ -27,16 +31,22 @@ import cn.com.basic.face.discern.entity.Dictionary; public class SelectDialog extends PopupWindow { + private final View parentView; @ViewInject(R.id.dialog_select_title) private TextView dialog_select_title; @ViewInject(R.id.dialog_select_list_view) private WheelView dialog_select_list_view; + @ViewInject(R.id.dialog_select_add_separator) + private View dialog_select_add_separator; + @ViewInject(R.id.dialog_select_add) + private TextView dialog_select_add; private List list = new ArrayList(); public static List visitorTypeList = new ArrayList(); public static List genderList = new ArrayList(); public static List idTypeList = new ArrayList(); + public static List visitReasonList = new ArrayList(); public static void setVisitorTypeList(List visitorTypeList) { SelectDialog.visitorTypeList = visitorTypeList; @@ -51,6 +61,7 @@ } public SelectDialog(View parentView, int type, OkClickedListener okButtonClickedListener) { + this.parentView = parentView; View view = LayoutInflater.from(MainActivity.getInstance()).inflate(R.layout.dialog_select,null); ViewUtils.inject(this, view); setTitleAndList(type); @@ -61,7 +72,12 @@ style.textSize = 16; style.holoBorderColor = Color.parseColor("#11c3e3"); - dialog_select_list_view.setWheelAdapter(new MyWheelAdapter(MainActivity.getInstance())); + if(type == Constant.DialogSelectType.VISIT_REASON) { + dialog_select_add_separator.setVisibility(View.VISIBLE); + dialog_select_add.setVisibility(View.VISIBLE); + } + + dialog_select_list_view.setWheelAdapter(new WheelAdapter(MainActivity.getInstance())); dialog_select_list_view.setSkin(WheelView.Skin.Holo); if (list != null && list.size() > 0) { dialog_select_list_view.setWheelData(list); @@ -147,11 +163,57 @@ tile = "璁垮绫诲瀷"; list = visitorTypeList; break; + case Constant.DialogSelectType.VISIT_REASON: + tile = "璇烽�夋嫨璁块棶浜嬬敱"; + list = visitReasonList; + break; } dialog_select_title.setText(tile); } - public static void setVisitReason(List<String> dictionaryNameList) { + @OnClick(R.id.dialog_select_add) + public void dialog_select_add_click(View view) { + dismiss(); + Toast.makeText(MainActivity.getInstance(), "娣诲姞", Toast.LENGTH_SHORT); + new AddDialog(parentView, Constant.DialogSelectType.VISIT_REASON_ADD, new OkClickedListener() { + public void onSelected(String value) { + CheckInFragment.getInstance().setVisitReasonText(value); + } + }); + } + + public static void setVisitReasonList(List visitReasonList) { + SelectDialog.visitReasonList = visitReasonList; + } + + + public static class WheelAdapter extends BaseWheelAdapter<String> { + private Context mContext; + + public WheelAdapter(Context context) { + mContext = context; + } + + @Override + protected View bindView(int position, View convertView, ViewGroup parent) { + ViewHolder viewHolder; + if (convertView == null) { + viewHolder = new ViewHolder(); + convertView = LayoutInflater.from(mContext).inflate(R.layout.dialog_row, null); + viewHolder.textView = (TextView) convertView.findViewById(R.id.item_wheel_name); + convertView.setTag(viewHolder); + } else { + viewHolder = (ViewHolder) convertView.getTag(); + } + viewHolder.textView.setText(mList.get(position)+""); + return convertView; + } + + static class ViewHolder { + TextView textView; + } } + + } -- Gitblit v1.8.0