如何在android上创建简单的日历

Cro*_*Boy 25 android calendar

我的Android应用程序需要简单的日历,我可以从中选择日期,并根据选择的日期从数据库中读取数据.我很难找到简单的日历示例.有人有简单日历的源代码吗?谢谢!

小智 7

Calendar API自Android 4.0开始提供.

创建新事件是通过Intents完成的,不需要任何权限.设置事件的属性是通过Intent extras完成的.将提示用户是否应创建事件.

例如,以下将提示用户是否应创建具有某些详细信息的事件.

 Intent intent = new Intent(Intent.ACTION_INSERT);
 intent.setData(CalendarContract.Events.CONTENT_URI);
 startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

如果重复此事件,您还可以添加日期和时间等.请参阅编码中的注释以获取示例.

 Intent intent = new Intent(Intent.ACTION_INSERT);
 intent.setType("vnd.android.cursor.item/event");
 intent.putExtra(Events.TITLE, "Learn Android");
 intent.putExtra(Events.EVENT_LOCATION, "Home suit home");
 intent.putExtra(Events.DESCRIPTION, "Download Examples");

 // Setting dates
 GregorianCalendar calDate = new GregorianCalendar(2012, 10, 02);
 intent.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, calDate.getTimeInMillis());
 intent.putExtra(CalendarContract.EXTRA_EVENT_END_TIME, calDate.getTimeInMillis());

 // Make it a full day event
 intent.putExtra(CalendarContract.EXTRA_EVENT_ALL_DAY, true);

// Make it a recurring Event
intent.putExtra(Events.RRULE, "FREQ=WEEKLY;COUNT=11;WKST=SU;BYDAY=TU,TH");

// Making it private and shown as busy
intent.putExtra(Events.ACCESS_LEVEL, Events.ACCESS_PRIVATE);
intent.putExtra(Events.AVAILABILITY, Events.AVAILABILITY_BUSY);
Run Code Online (Sandbox Code Playgroud)

更多关于这篇文章

以及更多日历api教程


小智 4

您应该使用 DatePicker...因为这是用户可以选择日期并根据该日期从数据库中读取数据的唯一简单方法...但是,嘿,您也应该展示您的努力...