如何在AlertDialog中显示CalendarView?

时间:2012-09-08 05:11:23

标签: android android-layout android-widget android-alertdialog calendarview

我正在尝试在警报对话框中显示CalendarView,但所有显示的都是月/年和星期几。 这些是布局文件的内容:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/myLayout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
<CalendarView
    android:id="@+id/calendarID"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:contentDescription="@string/cal_desc"
    android:maxDate="01/01/2013"
    android:minDate="09/01/2012"
    android:showWeekNumber="false"
    android:tag="my tag" />
</LinearLayout>

这是我用于将布局添加到AlertDialog的代码:

LayoutInflater inflater = (LayoutInflater)getApplicationContext().getSystemService
              (Context.LAYOUT_INFLATER_SERVICE);
LinearLayout ll= (LinearLayout)inflater.inflate(R.layout.myLayout, null, false);
CalendarView cv = (CalendarView) ll.getChildAt(0);
cv.setOnDateChangeListener(new OnDateChangeListener() {

        @Override
        public void onSelectedDayChange(CalendarView view, int year, int month,
                int dayOfMonth) {
            // TODO Auto-generated method stub
            initScheduleEvent();
        }
    });
new AlertDialog.Builder(MomAppActivity.this)
    .setTitle("Event Calendar")
    .setMessage("Click to schedule or view events.")
    .setView(ll)
    .setPositiveButton("Ok", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int whichButton) {
            //do nothing...yet
        }
    }).setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int whichButton) {
            // Do nothing.
        }
    }
    ).show();

任何帮助都会非常感激,因为我完全被难倒了。该应用程序没有给我任何错误继续。

3 个答案:

答案 0 :(得分:7)

要使日历正确显示,需要最小高度。其余代码工作正常。

答案 1 :(得分:1)

试试这个CalendarDialogBuilder

答案 2 :(得分:0)

如果您想要对话框的自定义设计,您可以使用布局和窗口小部件元素为对话框​​窗口创建自己的布局。

尝试这些链接希望您找到答案

  1. http://www.mkyong.com/android/android-custom-dialog-example/

  2. http://developer.android.com/guide/topics/ui/dialogs.html

  3. http://www.helloandroid.com/tutorials/how-display-custom-dialog-your-android-application