android 中的 DatePicker 日历视图

DatePicker calender view in android

您好,我遇到了一些奇怪的问题。我正在尝试从 android 中的 datepicker 中删除 calenderview。正如 Whosebug 中的大多数帖子所说,要添加这一行:

android:calenderViewShown="false"

但是当我添加这一行时出现错误。

error: No resource identifier found for attribute 'calendarViewShown' in package 'android'

如果我尝试使用此行通过代码添加它

picker.setCalendarViewShown(false);

然后显示错误:

The method setCalendarViewShown(boolean) is undefined for the type DatePicker

我的清单条目是这样的

<uses-sdk
        android:minSdkVersion="14"
        android:targetSdkVersion="23" />

我的完整XML代码是这样的

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical" >

            <DatePicker
                android:id="@+id/schedule"
                android:calendarViewShown="false"
                android:layout_width="match_parent"
                android:layout_height="wrap_content" />

            <TimePicker
                android:id="@+id/timePicker1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content" />

            <Button
                android:id="@+id/select"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="Set Alarm" />
        </LinearLayout>
    </ScrollView>

</RelativeLayout>

我已经尝试清理并重新启动 eclipse。但是没有用。我不明白什么是真正的问题!谁能帮帮我??

尝试使用android:datePickerMode="spinner"。因为它是 API 21 属性,所以不要忘记在 res 文件夹中创建一个新的 layout-v21 文件夹。

<DatePicker
    android:id="@+id/schedule"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:datePickerMode="spinner"
    android:calendarViewShown="false" />

denis_lor.. 先试试这个代码..

<DatePicker
    android:id="@+id/schedule"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:datePickerMode="spinner"
    android:calendarViewShown="false" />

但仍然没有得到结果,而不是尝试在 Java 中以编程方式尝试,例如..

dialogDatePicker.getDatePicker().setSpinnersShown(true);
dialogDatePicker.getDatePicker().setCalendarViewShown(false); 

希望对您有所帮助..

正如文档所说 -

public void setCalendarViewShown (boolean shown)

Added in API level 11 Sets whether the CalendarView is shown.

Note: Calling this method has no effect when the DatePicker_datePickerMode attribute is set to calendar.

Parameters shown true to show the calendar view, false to hide it

在 L 之后,DatePicker_datePickerMode 的默认模式是日历。因此,您必须确保选择了正确的模式。

要隐藏日历视图,首先将 datePickerMode 设置为 Spinner,然后您可以调用 setCalendarViewShown(false)。