Delphi XE5 for Android (十一)

如下内容是根据Delphi的帮助文件进行试验的,主要测试Android下的消息提醒。测试

首先创建一个空白的Android工程,而后在窗体中加入一个TNotificationCenter控件,以下图:spa

image

再在uses中引用文件,以下:3d

uses
  FMX.Platform;
 
窗体上控件放置以下图:
image
 
发送消息的代码以下:

procedure TForm2.Button2Click(Sender: TObject);
var
  MyNotification: TNotification;
begin
  //经过消息中心建立消息
  MyNotification := NotificationCenter1.CreateNotification;
  try
    //设置消息的名称
    MyNotification.Name := 'Schedule Notification';
    //设置消息的内容
    MyNotification.AlertBody := 'Schedule Notification:' + edtSchedule.Text;
    //设置图标标号
    MyNotification.Number := 18;
code

    //设置10秒后触发消息
    MyNotification.FireDate := Now + EncodeTime(0, 0, 10, 0);
    //将消息提交消息中心,并于指定时间触发,直接发送用PresentNotification
    NotificationCenter1.ScheduleNotification(MyNotification);
  finally
    //释放消息接口
    MyNotification.DisposeOf;
  end;
end;
orm

运行后,点击Schedule按钮10秒后看到消息提示,以下图:blog

image

当用户点击消息时,触发onReceiveLocalNotification事件,经过ANotification参数了解到客户点击的是哪条消息并做出处理。代码以下:接口

procedure TForm2.NotificationCenter1ReceiveLocalNotification(Sender: TObject;
  ANotification: TNotification);
begin
  //收到用户对消息的操做
  Label1.Text := '收到' + ANotification.Name + '的消息';
end;
事件

执行结果以下图:get

image

注意:不要按照Help中的例子在onReceiveLocalNotification事件使用ShowMessage,在Android下不只不能显示,因为弹出的对话框被覆盖,会致使整个程序假死。it

相关文章
相关标签/搜索