Android DatePickerDialog 只选择年月

//对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;

    }

 

你可能感兴趣的:(Datepicker)