Android中禁用掉DatePicker中的月/日

这里需要知道Java反射的知识,通过Java的反射机制可以轻松的获得private的成员变量,方法如下:

try {
            Class<?> myDatePicker = null;
            myDatePicker = Class.forName("android.widget.DatePicker");
            Field my = myDatePicker.getDeclaredField("mMonthSpinner");
            my.setAccessible(true);
            NumberPicker np = (NumberPicker)my.get(datePicker);
            np.setEnabled(false);
        } catch (Exception e) {
            e.printStackTrace();
        }


你可能感兴趣的:(Android中禁用掉DatePicker中的月/日)