在Android上的日期或时间样式选择

时间:2016-08-18 17:39 来源:互联网 作者:源码搜藏收藏

  • 源码类别:时间Time|Date
  • 源码大小:未知
  • 编码格式:gbk,utf8,不限
  • 运行环境:php+mysql
  • 广告推荐

材料日期时间选择器试图所示为您提供的日期和时间选择器的材料设计规范,有一个简单的主题化API。库使用Android框架代码为基础,并调整它是尽可能接近到材料设计的例子。

支持Android 4.0及了。

随意叉子或发布在github上拉请求。问题可以在GitHub的问题跟踪报告。

日期选取器 时间选择器
日期选取器 时间选择器

目录

  1. 建立
  2. 使用材料的日期/时间选择器
    1. 实施监听器
    2. 建立拾荒者
    3. 主题采摘
  3. 其他选项
  4. 常问问题
  5. 潜在的改进
  6. 执照

建立

到材质的DateTime选取器库添加到您的项目最简单的方法是添加它作为一个依赖你 build.gradle


	
dependencies {
  compile 'com.wdullaer:materialdatetimepicker:2.5.0'
}

您也可以作为一个Android库添加库到您的项目。所有的库文件住library

使用材料的日期/时间选择器

图书馆遵循相同的API在Android框架等采摘。对于基本实现,你需要

  1. 实施OnTimeSetListener/OnDateSetListener
  2. 创建TimePickerDialogDatePickerDialog使用附带的工厂
  3. 主题采摘

实施OnTimeSetListener/OnDateSetListener

为了接收在选择器设置的日期或时间,你将需要实现OnTimeSetListener或 OnDateSetListener接口。通常,这将是ActivityFragment创建该选取器。回调使用相同的API标准Android采摘。


	
@Override
public void onTimeSet(RadialPickerLayout view, int hourOfDay, int minute) {
  String time = "You picked the following time: "+hourOfDay+"h"+minute;
  timeTextView.setText(time);
}

@Override
public void onDateSet(DatePickerDialog view, int year, int monthOfYear, int dayOfMonth) {
  String date = "You picked the following date: "+dayOfMonth+"/"+(monthOfYear+1)+"/"+year;
  dateTextView.setText(date);
}

创建TimePickerDialogDatePickerDialog使用附带的工厂

您将需要创建一个新的实例TimePickerDialogDatePickerDialog使用静态newInstance()方法,提供合适的默认值和回调。一旦对话框配置,你可以调用show()


	
Calendar now = Calendar.getInstance();
DatePickerDialog dpd = DatePickerDialog.newInstance(
  MainActivity.this,
  now.get(Calendar.YEAR),
  now.get(Calendar.MONTH),
  now.get(Calendar.DAY_OF_MONTH)
);
dpd.show(getFragmentManager(), "Datepickerdialog");

主题采摘

采摘将自动根据在那里它们被创建的,根据当前的当前主题进行主题colorAccent您还可以通过主题在对话框setAccentColor(int color)的方法。或者,您可以主题采摘通过覆盖颜色资源mdtp_accent_color,并mdtp_accent_color_dark在您的项目。


	
<color name="mdtp_accent_color">#009688</color>
<color name="mdtp_accent_color_dark">#00796b</color>

其中颜色被选择的确切顺序如下:

  1. setAccentColor(int color) 在Java代码
  2. android.R.attr.colorAccent (如果Android 5.0以上版本)
  3. R.attr.colorAccent (例如使用应用程序兼容性时)
  4. R.color.mdtp_accent_colorR.color.mdtp_accent_color_dark如果没有其他人在你的项目设置

采摘也有黑暗的主题。这可以globablly使用指定mdtp_theme_dark在你的主题或属性setThemeDark(boolean themeDark)的功能。该函数调用覆盖XML设置。


	
<item name="mdtp_theme_dark">true</item>

其他选项

  • TimePickerDialog深色主题
    TimePickerDialog拥有,可以通过调用设置一个黑暗的主题

	
tpd.setThemeDark(true);
  • DatePickerDialog深色主题的DatePickerDialog拥有,可以通过调用设置一个黑暗的主题

	
dpd.setThemeDark(true);
  • setAccentColor(String color)setAccentColor(int color) 设置为通过对话中使用的强调色彩。字符串版本解析出彩使用Color.parseColor()的int版本需要ColorInt字节字符串。这将明确设置的颜色完全不透明。

  • TimePickerDialog setTitle(String title)
    示出了在所述顶部的标题 TimePickerDialog

  • DatePickerDialog setTitle(String title) 示出了在所述顶部的标题DatePickerDialog,而不是星期几

  • setOkText()setCancelText() 设置对话框确定自定义文本和取消标签。可以接受字符串的资源ID。工程中都DatePickerDialog和TimePickerDialog

  • setMinTime(Timepoint time)
    设定的最低有效时间被选择。时间值在当天早些时候将被停用

  • setMaxTime(Timepoint time)
    设置最大有效时间被选择。在一天的时间值之后将被停用

  • setSelectableTimes(Timepoint[] times) 您可以在一个阵列传递Timepoints这些值在选择器的唯一有效的选择。setMinTime(Timepoint time)而且setMaxTime(Timepoint time),将进一步削减这个名单了。

  • setTimeInterval(int hourInterval, int minuteInterval, int secondInterval) 设置在TimePickerDialog可选择倍的间隔。这是一个方便的包装器setSelectableTimes

  • setSelectableDays(Calendar[] days)
    你可以传递一个Calendar[]DatePickerDialog在此列表中的数值为选择器唯一可接受的日期。它优先setMinDate(Calendar day)setMaxDate(Calendar day)

  • setDisabledDays(Calendar[] days)
    在这个值Calendar[]被明确禁用(不可选)。此选项可以一起搭配使用setSelectableDays(Calendar[] days):万一有冲突setDisabledDays(Calendar[] days)将优先setSelectableDays(Calendar[] days)

  • setHighlightedDays(Calendar[] days)
    你可以通过一个Calendar[]天来突出。他们会以粗体呈现。您可以通过覆盖调整的突出天的颜色mdtp_date_picker_text_highlighted

  • showYearPickerFirst(boolean yearPicker)
    显示今年第一选择器,而不是月份和日期选择器。

  • OnDismissListenerOnCancelListener
    这两种选择器可以通过一个DialogInterface.OnDismissLisenerDialogInterface.OnCancelListener它允许你在发生这些事件的运行代码。


	
tpd.setOnCancelListener(new DialogInterface.OnCancelListener() {
    @Override
    public void onCancel(DialogInterface dialogInterface) {
      Log.d("TimePicker", "Dialog was cancelled");
    }
});
  • vibrate(boolean vibrate)
    置时做出选择对话框是否应当震动设备。默认为true

  • dismissOnPause(boolean dismissOnPause)
    设置选择器是否驳回本身当父活动被暂停或是否重新创建自己当活动重新开始。

  • DatePickerDialog autoDismiss(boolean autoDismiss) 如果设置为true当用户选择一个日期将关闭该选择器。默认为false

  • TimepickerDialog enableSeconds(boolean enableSconds)enableMinutes(boolean enableMinutes) 允许您启用或禁用秒和分钟选择器ONT他TimepickerDialog启用秒选择器,意味着使分钟选择器。禁用分钟选择器将禁用秒选择器。最后应用的设置将被使用。默认情况下enableSeconds = false

本站资源仅限于学习研究,严禁从事商业或者非法活动! 源码搜藏网所有源码来自互联网转载与用户上传分享,如果侵犯了您的权益请与我们联系,我们将在24小时内删除!谢谢!

时间Time|Date下载排行

最新文章