日期选择器DatePickerDialog简化使用

官方提供的例子,大致如下:

1. 在Activity中重写onCreateDialog方法,生成日期选择器;

2. 定义OnDateSetListener

3. 定义一个更新UI的方法

啰嗦。而且如果一个窗口有多个控件需要日期选择器的话,需要对每个选择器加以区别,代码就变得特别纷繁复杂。

有没有简便的使用方式呢?有,仅需短短几行代码,搞定!

首先,在工具类里定义一个static方法:

    public static void chooseDate(Context ctx, final TextView text){
        Calendar c = Calendar.getInstance();

        new DatePickerDialog(ctx, new DatePickerDialog.OnDateSetListener() {
            
            @Override
            public void onDateSet(DatePicker view, int year, int month,    int day) {
                String date = year + "-" + (month + 1) + "-" + day;
                text.setText(date);
            }
        }, c.get(Calendar.YEAR), c.get(Calendar.MONTH), c.get(Calendar.DATE))
        .show();    
    }
然后,在需要使用日期选择器的地方,比如某个文本输入框的单击事件里写上如下代码:

Utils.chooseDate(MyActivity.this, beginTime);
因为EditText是TextView的子类,上面的写法是没有问题的,可以在EditText里显示出选择后的日期值。

在另外一个文本输入框的单击事件里写上同样的代码:

Utils.chooseDate(MyActivity.this, endTime);
是不是很方便?


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值