首页

源码搜藏网

首页 > 安卓源码 > 控件分类 > 时间Time|Date >

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

创建时间:2016-08-18 17:39  

在Android上的日期或时间样式选择
在Android上的日期或时间样式选择
暂无演示 立即下载

材料日期时间选择器试图所示为您提供的日期和时间选择器的材料设计规范,有一个简单的主题化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>

其他选项


	
tpd.setThemeDark(true);

	
dpd.setThemeDark(true);

	
tpd.setOnCancelListener(new DialogInterface.OnCancelListener() {
    @Override
    public void onCancel(DialogInterface dialogInterface) {
      Log.d("TimePicker", "Dialog was cancelled");
    }
});
上一篇:基于wdullaers MaterialDateTimePicker的Android日期范围选择器
下一篇:一个Android时间选择器库

相关内容

热门推荐