You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何移除Android中DatePickerDialog顶部栏的日期?

解决DatePickerDialog移除顶部日期栏的问题

嘿,我来帮你搞定这个需求!你要移除的那个顶部日期其实是DatePickerDialog的标题栏,可以通过两种简单的方式实现:

方法一:通过自定义样式隐藏标题栏

你已经在使用自定义样式R.style.DatePicker了,只需要在styles.xml里给这个样式添加隐藏标题的属性即可:

<style name="DatePicker" parent="Theme.AppCompat.Light.Dialog">
    <!-- 保留你已有的其他样式属性 -->
    <item name="android:windowNoTitle">true</item>
    <!-- 适配AppCompat主题,确保属性生效 -->
    <item name="windowNoTitle">true</item>
</style>

这样创建DatePickerDialog时,标题栏会被自动隐藏,顶部的日期也就看不到了。

方法二:通过代码动态隐藏标题栏

如果不想修改样式,也可以在创建Dialog后、调用show()之前,通过代码手动隐藏标题:

修改你的Java代码如下:

final Calendar mCalender = Calendar.getInstance();
int mYear = mCalender.get(Calendar.YEAR);
int mMonth = mCalender.get(Calendar.MONTH);
int mDay = mCalender.get(Calendar.DAY_OF_MONTH);

DatePickerDialog dialog = new DatePickerDialog(getActivity(),R.style.DatePicker, (DatePickerDialog.OnDateSetListener) getActivity(), mYear, mMonth, mDay);

// 添加这行代码隐藏标题栏
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);

dialog.show();

或者也可以用另一种等效写法:

dialog.getWindow().setTitle("");

两种方法都能达到你想要的效果,选你觉得更顺手的就行~

内容的提问来源于stack exchange,提问作者David

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 08:19:42