Firemonkey Android Access Calendar and Events



如何使用Delphi XE5访问Android上的日历和事件。

要访问日历,您可以使用 Calendar 类,该类由 Delphi 中的 JCalendar 类表示。

您可以在此处找到一组示例

这是一个德尔菲样本

uses
  Androidapi.JNI.GraphicsContentViewText,
  FMX.Helpers.Android,
  Androidapi.JNI.JavaTypes;

procedure TForm1.Button1Click(Sender: TObject);
var
  Intent: JIntent;
  Calendar: JCalendar;
begin
  Calendar := TJCalendar.JavaClass.getInstance;
  Intent := TJIntent.Create;
  Intent.setType(StringToJString('vnd.android.cursor.item/event'));
  intent.putExtra(StringToJString('beginTime'), Calendar.getTimeInMillis());
  intent.putExtra(StringToJString('allDay'), true);
  intent.putExtra(StringToJString('rrule'), StringToJString('FREQ=YEARLY'));
  intent.putExtra(StringToJString('endTime'), Calendar.getTimeInMillis()+3600*1000);
  intent.putExtra(StringToJString('title'), StringToJString('Hello from Delphi'));
  SharedActivity.startActivity(Intent);
end;

在XE5中,他们从PlatformServices开始,并将Pickers Service放入其中: http://docwiki.embarcadero.com/Libraries/XE5/en/FMX.Pickers.IFMXPickerService

可能这段代码可供您使用:

  var
      PickerService: IFMXPickerService;
    begin
       if PlatformServices.Current.SupportsPlatformService(
           IFMXPickerService, Interface(PickerService))
    then
        FDateTimePicker := PickerService.CreateDateTimePicker;
        ...   // or
        FListPicker := PickerService.CreateListPicker;

最新更新