如何打开Android日历应用程序并跳转到指定的日期?

use*_*193 5 android calendar

我想从我的应用程序打开日历并将参数"日期"传递给此日历.

此日历将显示日期的相应日期页面.

我调查了日历的源代码,但没有找到使用的方法.

public static void openCalendarApp(Context context)
{   
    Intent intent = context.getPackageManager().getLaunchIntentForPackage("com.android.calendar");
    context.startActivity(intent);
}
Run Code Online (Sandbox Code Playgroud)

Hip*_*ray 4

您可以使用日历视图来执行此操作...使用该setDate(long date)方法将日历上的日期设置为您想要的日期

您还可以通过将事件添加到日历来完成此操作,如下所示

创建日历的意图

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

播种日历日期和时间

Intent calIntent = new Intent(Intent.ACTION_INSERT);
calIntent.setType("vnd.android.cursor.item/event");
calIntent.putExtra(Events.TITLE, "Title here");
calIntent.putExtra(Events.EVENT_LOCATION, "Location here");
calIntent.putExtra(Events.DESCRIPTION, "Description here");
GregorianCalendar calDate = new GregorianCalendar(2012, 7, 15);
calIntent.putExtra(CalendarContract.EXTRA_EVENT_ALL_DAY, true);
calIntent.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME,
     calDate.getTimeInMillis());
calIntent.putExtra(CalendarContract.EXTRA_EVENT_END_TIME,
     calDate.getTimeInMillis());
startActivity(calIntent);
Run Code Online (Sandbox Code Playgroud)

可以在这里看到一个例子