Android 上没有 header 可以使用 TimePicker

Can TimePicker be used without header on Android

我正在使用 <TimePicker> 小部件来让用户设置时间。 但是,由于我将 <TimePicker> 嵌入到我的一个视图中,我想去掉 TimePicker 的 header(图中划掉的区域)。

Android 中的默认时间选择器如下所示:

问题:是否可以去掉timepicker的header,只使用widget的模拟部分?

TimePicker中没有public方法可以直接隐藏或显示Time Header。尝试下面的源代码将为我们提供该视图的资源 ID 的名称,我们可以通过系统资源获取该名称。然后找到View,将它的可见性设置为GONE。(我没测试过)

private void hideTimeHeaderLayout(TimePicker picker) {
    final int id = Resources.getSystem().getIdentifier("time_header", "id", "android");
    final View timeLayout = picker.findViewById(id);
    if(timeLayout != null) {
        timeLayout .setVisibility(View.GONE);
    }
}