Delphi XE5 for Android (十一)


以下內容是根據Delphi的幫助文件進行試驗的,主要測試Android下的消息提醒。

首先建立一個空白的Android工程,然后在窗體中加入一個TNotificationCenter控件,如下圖:

image

再在uses中引用文件,如下:

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;

    //設置10秒后觸發消息
    MyNotification.FireDate := Now + EncodeTime(0, 0, 10, 0);
    //將消息提交消息中心,並於指定時間觸發,直接發送用PresentNotification
    NotificationCenter1.ScheduleNotification(MyNotification);
  finally
    //釋放消息接口
    MyNotification.DisposeOf;
  end;
end;

運行后,點擊Schedule按鈕10秒后看到消息提示,如下圖:

image

當用戶點擊消息時,觸發onReceiveLocalNotification事件,通過ANotification參數了解到客戶點擊的是哪條消息並作出處理。代碼如下:

procedure TForm2.NotificationCenter1ReceiveLocalNotification(Sender: TObject;
  ANotification: TNotification);
begin
  //收到用戶對消息的操作
  Label1.Text := '收到' + ANotification.Name + '的消息';
end;

執行結果如下圖:

image

注意:不要按照Help中的例子在onReceiveLocalNotification事件使用ShowMessage,在Android下不僅不能顯示,由於彈出的對話框被覆蓋,會導致整個程序假死。

 

 

 
       


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM