首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Android中创建日期和时间选择器?

如何在Android中创建日期和时间选择器?
EN

Stack Overflow用户
提问于 2010-01-13 17:09:05
回答 12查看 196.8K关注 0票数 141

有没有什么android小工具可以同时选择日期和时间?我已经使用了基本的time pickerdate picker

但它们并不那么性感和用户友好(我发现)。您是否知道是否存在同时包含日期和时间的小部件?

非常感谢,Luc

EN

回答 12

Stack Overflow用户

回答已采纳

发布于 2010-01-13 21:15:35

Android中没有内置任何东西来提供这一功能。

编辑: Andriod现在提供了内置的选择器。检查@Oded answer

票数 54
EN

Stack Overflow用户

发布于 2016-03-02 19:26:33

使用此功能,您可以逐个获取日期和时间,然后将其设置为全局变量日期。没有库,没有XML。

代码语言:javascript
复制
Calendar date;
public void showDateTimePicker() {
   final Calendar currentDate = Calendar.getInstance();
   date = Calendar.getInstance();
   new DatePickerDialog(context, new DatePickerDialog.OnDateSetListener() {
       @Override
       public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
            date.set(year, monthOfYear, dayOfMonth);
            new TimePickerDialog(context, new TimePickerDialog.OnTimeSetListener() {
                @Override
                public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
                    date.set(Calendar.HOUR_OF_DAY, hourOfDay);
                    date.set(Calendar.MINUTE, minute);
                    Log.v(TAG, "The choosen one " + date.getTime());
                }
            }, currentDate.get(Calendar.HOUR_OF_DAY), currentDate.get(Calendar.MINUTE), false).show();
       }
   }, currentDate.get(Calendar.YEAR), currentDate.get(Calendar.MONTH), currentDate.get(Calendar.DATE)).show();
}
票数 77
EN

Stack Overflow用户

发布于 2015-02-03 13:11:27

我创建了一个library来做这件事。它也有可定制的颜色!

它使用起来非常简单。

首先创建一个监听程序:

代码语言:javascript
复制
private SlideDateTimeListener listener = new SlideDateTimeListener() {

    @Override
    public void onDateTimeSet(Date date)
    {
        // Do something with the date. This Date object contains
        // the date and time that the user has selected.
    }

    @Override
    public void onDateTimeCancel()
    {
        // Overriding onDateTimeCancel() is optional.
    }
};

然后创建并显示该对话框:

代码语言:javascript
复制
new SlideDateTimePicker.Builder(getSupportFragmentManager())
    .setListener(listener)
    .setInitialDate(new Date())
    .build()
    .show();

我希望你会发现它是有用的。

票数 29
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2055509

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档