/**
* 从当前DatePicker中查找所有NumberPicker子控件
*
* @param dp
* @return
*/
public static List<NumberPicker> findNumberPicker(ViewGroup dp) {
List<NumberPicker> NumberPickerList = new ArrayList<NumberPicker>();
View child;
if (dp != null) {
for (int i = 0; i < dp.getChildCount(); i++) {
child = dp.getChildAt(i);
if (child instanceof NumberPicker) {
NumberPickerList.add((NumberPicker) child);
} else if (child instanceof LinearLayout) {
List<NumberPicker> result = findNumberPicker((ViewGroup) child);
if (result.size() > 0)
return result;
}
}
}
return NumberPickerList;
}
/**
* 从当前NumberPicker中查找EditText子控件
*
* @param group
* @return
*/
public static EditText findEditText(NumberPicker np) {
if (np != null) {
for (int i = 0; i < np.getChildCount(); i++) {
View child = np.getChildAt(i);
if (child instanceof EditText) {
return (EditText) child;
}
}
}
return null;
}
/**
* 修改当前datepicker的字体大小
*
* @param
* @return
*/
public static void SetNumberPickerTxt(ViewGroup dp) {
List<NumberPicker> nbList = new ArrayList<NumberPicker>();
nbList = findNumberPicker(dp);
if (nbList != null) {
for (int i = 0; i < nbList.size(); i++) {
NumberPicker nbTmp = (NumberPicker) nbList.get(i);
EditText edTxt = findEditText(nbTmp);
edTxt.setFocusable(false);
edTxt.setGravity(Gravity.CENTER);
edTxt.setTextSize(28);
}
}
}