Здравствуйте! Мы продолжаем изучать FireMonkey, и сегодня рассмотрим:
1)Как отправить уведомление из приложения
2)Полезный для android программирования компонент switch(переключатель).
Немного незамысловатый дизайн, но сегодня он нам особо и не понадобится.
Для функционирования программы нам нужны 2 компонента - это компоненты switch и NotificationCenter(центр уведомлений). Можете также добавить пару компонентов label, как на скриншотах.
У switch’а есть одноименное событие switch, которое происходит при переключении позиции.
Основным свойством компонента является свойство IsChecked.
Напишем обработчик на это событие:
procedure TForm1.Switch1Switch(Sender: TObject);
var
Notification: TNotification;
begin
if switch1.IsChecked=true then begin //если switch активен, то...
Notification := NotificationCenter1.CreateNotification;//создаем экземпляр класса TNotification
try //обработчик ошибок
Notification.Name := 'MyNotification'; // Название
Notification.AlertBody := 'Уведомление: PWcode.net'; // содержание уведомления
Notification.FireDate := Now + EncodeTime(0, 0, 4, 0); // Задержка отправки на 4 секунды
NotificationCenter1.ScheduleNotification(Notification); //отправка уведомления в компонент
finally
Notification.DisposeOf; //очистка переменной при возникновении ошибки
end;
end;
if switch1.IsChecked=false then begin //код при отключении switch'а
NotificationCenter1.CancelNotification('MyNotification');//отключаем центр уведомлений
end;
end;
Как вы сами можете убедиться, при изменении положения выключателя, в окно событий android выводится наше уведомление. Все, как и планировалось, удачи!
P.S: NotificationCenter имеет событие ReceiveLocalNotification, которое определяет действия, после нажатия на уведомление. Пока оно не работает, но в данный момент числится в списке на исправление в ближайшем обновлении.