热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

更改Android5.0的Datepicker对话框颜色

是否可以更改android5.0的datepicker(以及timepicker)配色方案?我尝试设置强调颜色,但这不起作用(有和没有android:):

是否可以更改android 5.0的datepicker(以及timepicker)配色方案?

我尝试设置强调颜色,但这不起作用(有和没有android :):


@color/purple
@color/purple_tint
@color/purple_tint

来自原文:

对于这样的事情:

解决方法:

Neil的建议导致全屏DatePicker的原因是父主题的选择:



此外,如果你走这条路线,你必须在创建DatePickerDialog时指定主题:

// R.style.DialogTheme
new DatePickerDialog(MainActivity.this, R.style.DialogTheme, new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
//DO SOMETHING
}
}, 2015, 02, 26).show();

在我看来,这并不好.应该尝试将样式保留在java和styles.xml / themes.xml中.

我同意Neil的建议,稍微改变(改变父主题,比如说Theme.Material.Light.Dialog)会得到你想要的结果.但是,这是另一种方式:

在第一次检查时,我们遇到了datePickerStyle,它定义了诸如:headerBackground(你想要改变什么),dayOfWeekBackground以及一些其他文本颜色和文本样式的东西.

在您的应用主题中覆盖此属性将不起作用. DatePickerDialog使用由属性datePickerDialogTheme分配的单独主题.因此,为了使我们的更改生效,我们必须在重写的datePickerDialogTheme中覆盖datePickerStyle.

开始了:

在应用的基本主题中覆盖datePickerDialogTheme:


定义MyDatePickerDialogTheme.父主题的选择将取决于您的应用程序的基本主题:它可以是Theme.Material.Dialog或Theme.Material.Light.Dialog:


我们使用样式MyDatePickerStyle重写了datePickerStyle.父母的选择将再次取决于您的应用程序的基本主题:Widget.Material.DatePicker或Widget.Material.Light.DatePicker.根据您的要求定义它:


目前,我们只重写headerBackground,默认设置为?attr / colorAccent(这也是Neil建议在更改背景时的原因).但是有很多可能的定制:

dayOfWeekBackground
dayOfWeekTextAppearance
headerMonthTextAppearance
headerDayOfMonthTextAppearance
headerYearTextAppearance
headerSelectedTextColor
yearListItemTextAppearance
yearListSelectorColor
calendarTextColor
calendarSelectedTextColor

如果您不想要这么多控件(自定义),则不需要覆盖datePickerStyle. colorAccent控制大多数DatePicker的颜色.因此,覆盖myDatePickerDialogTheme中的colorAccent应该可以正常工作:


覆盖colorAccent为您提供更改OK& amp;取消文本颜色.不错.

这样您就不必向DatePickerDialog的构造函数提供任何样式信息.一切都正确连线:

DatePickerDialog dpd = new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
}
}, 2015, 5, 22);
dpd.show();


推荐阅读
  • 自定义RecyclerView添加EmptyView
    你知道RecyclerView里没有Em ... [详细]
  • 我们需要监听ScroView的滑动情况,比如滑动了多少距离,是否滑到布局的顶部或者底部。可惜的是SDK并没有相应的方法,不过倒是提供了一个protectedvoidonScrollChang ... [详细]
  • 一、在androidStudio中实现tabs比较简单,新建项目就可以选择tabs模板进行创建,默认实现tabs功能:直接运行项目就可以看到效果:可以说非常简单,但是我们在实际开发 ... [详细]
  • Android开发实现的计时器功能示例
    本文分享了Android开发实现的计时器功能示例,包括效果图、布局和按钮的使用。通过使用Chronometer控件,可以实现计时器功能。该示例适用于Android平台,供开发者参考。 ... [详细]
  • Android工程师面试准备及设计模式使用场景
    本文介绍了Android工程师面试准备的经验,包括面试流程和重点准备内容。同时,还介绍了建造者模式的使用场景,以及在Android开发中的具体应用。 ... [详细]
  • 带添加按钮的GridView,item的删除事件
    先上图片效果;gridView无数据时显示添加按钮,有数据时,第一格显示添加按钮,后面显示数据:布局文件:addr_manage.xml<?xmlve ... [详细]
  • Xamarin.Android-用ZXing实现二维码扫描以及连续扫描
    一、前言本文的内容有两个基础:ZXing.Net和ZXing.Net.MobileZXing.Net:ZXing的C#实现,主要封装了各种二维码的编码、解码等跨平台的算法ZXing.Net.Mo ... [详细]
  • 我正在使用数组列表通过构建一个交互式菜单供用户选择来存储来自用户输入的值。到目前为止,我的两个选择是为用户提供向列表输入数据和读取列表的全部内容。到目前为止,我创建的代码由两个类组成。 ... [详细]
  • 发现很多时候展示一堆文字,需要让局部的某些字变粗啊,变大、变颜色、能点击等等要求,今天在这简单总结下方便日后直接复用(用ht ... [详细]
  • 本文介绍了pack布局管理器在Perl/Tk中的使用方法及注意事项。通过调用pack()方法,可以控制部件在显示窗口中的位置和大小。同时,本文还提到了在使用pack布局管理器时,应注意将部件分组以便在水平和垂直方向上进行堆放。此外,还介绍了使用Frame部件或Toplevel部件来组织部件在窗口内的方法。最后,本文强调了在使用pack布局管理器时,应避免在中间切换到grid布局管理器,以免造成混乱。 ... [详细]
  • 最近学习了数据挖掘常用的两种算法:FP-Growth和K-Means。现在把我的学习结果分享给大家。以下是本文的目录,大家可以根据需要跳过一些章节:1.FP-Grow ... [详细]
  • 使用ffmpeg进行视频格式转换的简单例子2006-12-1623:12主要参考FFMPEG里面的apiexample.c以及output_example.c编写intmain(in ... [详细]
  • Android源码中的Builder模式及其作用
    本文主要解释了什么是Builder模式以及其作用,并结合Android源码来分析Builder模式的实现。Builder模式是将产品的设计、表示和构建进行分离,通过引入建造者角色,简化了构建复杂产品的流程,并且使得产品的构建可以灵活适应变化。使用Builder模式可以解决开发者需要关注产品表示和构建步骤的问题,并且当构建流程发生变化时,无需修改代码即可适配新的构建流程。 ... [详细]
  • 本文介绍了iOS开发中检测和解决内存泄漏的方法,包括静态分析、使用instruments检查内存泄漏以及代码测试等。同时还介绍了最能挣钱的行业,包括互联网行业、娱乐行业、教育行业、智能行业和老年服务行业,并提供了选行业的技巧。 ... [详细]
  • 第一步:PyQt4Designer设计程序界面该部分设计类同VisvalStudio内的设计,改下各部件的objectName!设计 ... [详细]
author-avatar
手机用户2502906317
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有