//对EditText注册OnTouch事件
etSscxNssbDate.setOnTouchListener(selectDateTouchListener);
//选择日期 private OnTouchListener selectDateTouchListener = new OnTouchListener(){ @Override public boolean onTouch(View v, MotionEvent event) { if(event.getAction()==MotionEvent.ACTION_UP){ final Calendar cd=Calendar.getInstance(); Date date=new Date(); cd.setTime(date); DatePickerDialog dp= new DatePickerDialog(getActivity(), new OnDateSetListener(){ public void onDateSet(DatePicker view, int year,int monthOfYear, int dayOfMonth) { String dateStr = year+"-"+StrUtil.adjustMonthDay(monthOfYear+1); //当用户选择完年月之后,进行查询操作 if(PhoneInfo.isConnectInternet(getActivity())){ etSscxNssbDate.setText(dateStr); doNssbQkSelect(); }else{ UIUtil.raDialog(getActivity(), WR.NET_NOT_CONN); } } }, cd.get(Calendar.YEAR), cd.get(Calendar.MONTH), cd.get(Calendar.DAY_OF_MONTH)); dp.show(); //隐藏天数 if (dp != null) { int SDKVersion = PhoneInfo.getSDKVersionNumber(); if (SDKVersion < 11) { ((ViewGroup) dp.getDatePicker().getChildAt(0)).getChildAt(2).setVisibility(View.GONE); } else if (SDKVersion > 14) { ((ViewGroup) ((ViewGroup) dp.getDatePicker().getChildAt(0)).getChildAt(0)).getChildAt(2).setVisibility(View.GONE); } } etSscxNssbDate.setInputType(InputType.TYPE_NULL); } return false; } };
/** * 获取系统SDK版本 * @return */ public static int getSDKVersionNumber() { int sdkVersion; try { sdkVersion = Integer.valueOf(android.os.Build.VERSION.SDK_INT); } catch (NumberFormatException e) { sdkVersion = 0; } return sdkVersion; }