DatePickerDialog 隱藏子控件

通過遍歷方法查找DatePicker裏的子控件:年、月、日

private DatePicker findDatePicker(ViewGroup group) {
        if (group != null) {
            for (int i = 0, j = group.getChildCount(); i < j; i++) {
                View child = group.getChildAt(i);
                if (child instanceof DatePicker) {
                    return (DatePicker) child;
                } else if (child instanceof ViewGroup) {
                    DatePicker result = findDatePicker((ViewGroup) child);
                    if (result != null)
                        return result;
                }
            }
        }
        return null;
    } 
隱藏不想顯示的子控件,隱藏必須在show之後,不然會報錯

final Calendar cal = Calendar.getInstance();  
mDialog = new CustomerDatePickerDialog(getContext(), this,  
    cal.get(Calendar.YEAR), cal.get(Calendar.MONTH),  
    cal.get(Calendar.DAY_OF_MONTH));  
mDialog.show();  
  
DatePicker dp = findDatePicker((ViewGroup) mDialog.getWindow().getDecorView());  
if (dp != null) {  
    ((ViewGroup)((ViewGroup) dp.getChildAt(0)).getChildAt(0)).getChildAt(2).setVisibility(View.GONE);  
}  



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章