2015-10-14 73 views
1

在我的项目中试图实现Notifications时,德尔福西雅图不能正确引用FMX.Notification德尔福西雅图不能引用默认的FMX类

这就是我得到:

[DCC致命错误] UnitMain.pas(27):F2613单位“FMX.Notification找不到。

然后它会自动引用System.Notification,但是它尝试使用此类中的对象时崩溃了我的Android应用程序。

如何在德尔福西雅图上正确实现通知?

注意:它必须在iOSAndroid上运行。

回答

3

根据Embarcadero's official Seattle changes

的FMX.Notification单元已取代System.Notification

TNotificationCenter组件现在支持Windows 8及更高版本的Windows版本。此组件也经历了一些小的更改:

  • 它提供了一个Loaded属性来检查通知中心是否可以使用或不可用。
  • ApplicationIconBadgeNumber的类型已从Word更改为Integer。
  • 它的Supported方法已不再需要,并已被删除。

TBaseNotificationCenter类已取代IFMXNotificationCenter接口。用于实现IFMXNotificationCenter接口的类必须成为TBaseNotificationCenter的子类并实现其父类的虚拟抽象方法。


在此如何我想通了,现在显示通知:

procedure TForm_Master.showNotification(Sender: TObject); 
var 
    MyNotification: TNotification; 
begin 

    MyNotification := NotificationCenter1.CreateNotification; 

    try 
     MyNotification.Name := 'NotificationName'; 
     MyNotification.AlertBody := 
     'Here goes your message'; 
     MyNotification.FireDate := Now; 
     // Send notification to the notification center 
     NotificationCenter1.ScheduleNotification(MyNotification); 
    finally 
     MyNotification.Free; 
    end; 

    end; 
相关问题