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

相關文章
相關標籤/搜索