package cn.com.basic.face.dialog;
|
|
import android.content.Context;
|
import android.graphics.Color;
|
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 com.bsk.zhangbo.demoforbsk.R;
|
import com.lidroid.xutils.ViewUtils;
|
import com.lidroid.xutils.view.annotation.ViewInject;
|
import com.lidroid.xutils.view.annotation.event.OnClick;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
|
import cn.com.basic.face.base.BaseApplication;
|
import cn.com.basic.face.base.MainActivity;
|
import cn.com.basic.face.dialog.wheelview.adapter.BaseWheelAdapter;
|
import cn.com.basic.face.dialog.wheelview.widget.WheelView;
|
import cn.com.basic.face.discern.common.CommonVariables;
|
import cn.com.basic.face.fragment.AttenderRegisterFragment;
|
import cn.com.basic.face.util.Constant;
|
import cn.com.basic.face.util.OkClickedListener;
|
import cn.com.basic.face.util.SurveillanceQueryItemUtil;
|
import cn.com.basic.face.util.UnknownSurveillanceQueryItemUtil;
|
import cn.com.basic.face.widget.surveilance.AttenderRegisterSelectPhotoListView;
|
import cn.com.basic.face.widget.surveilance.SurveillancePhotoSelectListView;
|
|
public class AttenderRegisterSelectPhotoDialog extends PopupWindow {
|
private final View parentView;
|
|
@ViewInject(R.id.dialog_surveillance_photo_select_list_view)
|
private AttenderRegisterSelectPhotoListView dialog_surveillance_photo_select_list_view;
|
|
public static long selectedId = -1;
|
|
private static AttenderRegisterSelectPhotoDialog instance = new AttenderRegisterSelectPhotoDialog();
|
public static AttenderRegisterSelectPhotoDialog getInstance() {
|
return instance;
|
}
|
|
public AttenderRegisterSelectPhotoDialog() {
|
this.parentView = AttenderRegisterFragment.getInstance().get_fragment_attender_register_linear_layout();
|
View view = LayoutInflater.from(MainActivity.getInstance()).inflate(R.layout.dialog_attender_register_select_photo_select,null);
|
ViewUtils.inject(this, view);
|
|
if (BaseApplication.getInstance().networkAvailable()) {
|
if (CommonVariables.Register.VISITOR_REGISTER_SELECTED) {
|
dialog_surveillance_photo_select_list_view.show(SurveillanceQueryItemUtil.getInstance().getAllUnregisterVisitorTwoRowsForSelect(selectedId));
|
} else {
|
dialog_surveillance_photo_select_list_view.show(SurveillanceQueryItemUtil.getInstance().getAllUnregisterAttenderTwoRowsForSelect(selectedId));
|
}
|
} else {
|
if (CommonVariables.Register.VISITOR_REGISTER_SELECTED) {
|
dialog_surveillance_photo_select_list_view.show(UnknownSurveillanceQueryItemUtil.getInstance().getAllUnregisterVisitorTwoRowsForSelect(selectedId));
|
} else {
|
dialog_surveillance_photo_select_list_view.show(UnknownSurveillanceQueryItemUtil.getInstance().getAllUnregisterAttenderTwoRowsForSelect(selectedId));
|
}
|
}
|
setTitleAndList(Constant.DialogSelectType.ID_TYPE);
|
WheelView.WheelViewStyle style = new WheelView.WheelViewStyle();
|
style.selectedTextColor = Color.parseColor("#11c3e3");
|
style.textColor = Color.parseColor("#bcc6cf");
|
style.selectedTextSize = 22;
|
style.textSize = 16;
|
style.holoBorderColor = Color.parseColor("#11c3e3");
|
|
view.setOnTouchListener(new View.OnTouchListener() {
|
@Override
|
public boolean onTouch(View view, MotionEvent motionEvent) {
|
View popLayout = view.findViewById(R.id.dialog_add_linear_layout);
|
int top = popLayout.getTop();
|
int bottom = popLayout.getBottom();
|
int left = popLayout.getLeft();
|
int right = popLayout.getRight();
|
int y = (int) motionEvent.getY();
|
int x = (int) motionEvent.getX();
|
if (motionEvent.getAction() == MotionEvent.ACTION_UP){
|
if (y<top || y> bottom){
|
dismiss();
|
}
|
if (x < left || x > right){
|
dismiss();
|
}
|
|
}
|
return true;
|
}
|
});
|
|
setOutsideTouchable(true);
|
this.setContentView(view);
|
this.setHeight(RelativeLayout.LayoutParams.MATCH_PARENT);
|
this.setWidth(RelativeLayout.LayoutParams.MATCH_PARENT);
|
this.setFocusable(true);
|
//this.setBackgroundDrawable(new ColorDrawable(0x7f000000));
|
this.setAnimationStyle(R.style.PopupSlideAnimation);
|
okButtonClickedListeners.add(new OkClickedListener() {
|
@Override
|
public void onSelected(String value) {
|
|
}
|
});
|
this.showAtLocation(parentView, Gravity.BOTTOM,0,330);
|
}
|
|
|
@OnClick(R.id.dialog_add_ok)
|
public void dialog_add_ok_click(View view) {
|
for (OkClickedListener okButtonClickedListener : okButtonClickedListeners) {
|
// okButtonClickedListener.onSelected(dialog_add_content.getText().toString());
|
}
|
dismiss();
|
}
|
|
@OnClick(R.id.dialog_add_cancel)
|
public void dialog_add_cancel_click(View view) {
|
dismiss();
|
}
|
|
private List<OkClickedListener> okButtonClickedListeners = new ArrayList<OkClickedListener>();
|
|
public void addOkButtonClickedListener(OkClickedListener okButtonClickedListener) {
|
this.okButtonClickedListeners.add(okButtonClickedListener);
|
}
|
|
private void setTitleAndList(int type) {
|
String tile = "";
|
switch (type) {
|
case Constant.DialogSelectType.VISIT_REASON_ADD:
|
tile = "添加访问事由";
|
break;
|
}
|
// dialog_add_title.setText(tile);
|
}
|
|
public static void setVisitReasonList(List visitReasonList) {
|
AddDialog.visitReasonList = visitReasonList;
|
}
|
|
public void show() {
|
if (this.isShowing()) {
|
|
} else {
|
//this.showAsDropDown();
|
this.showAtLocation(parentView, Gravity.BOTTOM,0,330);
|
}
|
}
|
|
public void hide() {
|
if (this.isShowing()) {
|
dismiss();
|
} else {
|
}
|
}
|
|
|
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) {
|
AddDialog.WheelAdapter.ViewHolder viewHolder;
|
if (convertView == null) {
|
viewHolder = new AddDialog.WheelAdapter.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 = (AddDialog.WheelAdapter.ViewHolder) convertView.getTag();
|
}
|
viewHolder.textView.setText(mList.get(position)+"");
|
return convertView;
|
}
|
|
static class ViewHolder {
|
TextView textView;
|
}
|
|
}
|
}
|