Перейти к содержанию
Fire Monkey от А до Я

Demon-x

Пользователи
  • Постов

    10
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные Demon-x

  1. 18 часов назад, slav_z сказал:

    попробуйте переопределить метод function GetDefaultStyleLookupName: string; override; своего компонента.... и вернуть название класса стиля родителя... (посмотрите переопределение этого метода у стандартных компонентов)

    Спасибо! Это помогло!!!

  2. Доброго дня!

    Есть простой вопрос, хотелось бы такой же простой ответ)

    Создаю свой компонент, взяв за наследника TSpeedButton, называю его TNewSpeedButton. В Инспекторе Объектов свойство StyleLookup моего компонента - пустое, а нужно чтобы был перечень, аналогичный родителюTSpeedButton.

    Единственное, что смог найти на форуме, это:

    "Этот список формируется динамически на основании правила.

    1. В список попадают те стили, которые содержат подстроку <Имя компонента> без префикса Т."

    Но так и не понял как с этим можно бороться...

  3. Решал аналогичную проблему с позиционированием картинки, встроенной в SpeedButton, нужно было увязать ее размер с размером кнопки и выравнивать по центру(у типовой - по левому краю почему то), но чтобы можно было в Инспекторе объектов уменьшить картинку пропорционально высоте и ширине кнопки в % отношении.

    Заодно и поправил ограничение с размером под Андроид по высоте. Для себя решил, что Стили это здорово. но лучше такие вещи выводить в Инспектор свойств и там иметь возможность править. В итоге просто сделал свой компонент на базе типового. Чтоб стили каждый раз не дёргать...

  4. При попытке установить собственный звуковой сигнал на оповещения в АНДРОИД - за основу  взял пример самой Embarcadero RAD 10.3 и справку по системе уведомлений Андроид - звука нет.

    Дальше - интереснее - PresentNotification - вообще не реагирует на смену звука и играет штатный, а ScheduleNotification - тупо перестает создавать оповещения.

    procedure TNotificationsForm.btnSendNotificationImmediatelyClick(Sender: TObject);
    var
      Notification: TNotification;
    begin
      { verify if the service is actually supported }
      Notification := NotificationC.CreateNotification;
      try
        Notification.Name := 'MyNotification';
        Notification.AlertBody := 'Delphi for Mobile is here!';
        Notification.FireDate := Now;
        Notification.EnableSound := True;
        Notification.SoundName := TPath.Combine(TPath.GetDocumentsPath, 'mysound.mp3'); //
    звуковой файл задеплоен в проект , mediapleer воспроизводит нормально.
        { Send notification in Notification Center }
        NotificationC.PresentNotification(Notification);
        { also this method is equivalent if platform supports scheduling }
        //NotificationC.ScheduleNotification(Notification);
      finally
        Notification.DisposeOf;
      end;
    end;

     

     

  5. Добрый день!

    Ниже приведена ссылка на выявленную еще 5 (!!!!) лет назад ошибку в работе Android TNotificationCenter (и способ её устранения). Возможно есть адрес, куда нужно писать Embarcadero и быть услышанным, чтобы они наконец то исправили её, если кто знает - прошу написать.

    Delphi Seattle Android Tnotificationcenter Cancelall Не Работает После Того, Как Одно Уведомление Уволено (progi.pro).

    Кратко, суть ошибки в том, что после создания нескольких разных отложенных событий напоминаний и последующей попытке их(часть из них) отменить стандартной документированной, описанной в официальном примере (!!!!) процедурой  "System.Notification.TCustomNotificationCenter.CancelNotification  procedure CancelNotification(const AName: string)" - корректной отмены в АНДРОИД не происходит (не корректно считывается AName).

    Проверено на Delphi 10.3 и Андроид 8.

×
×
  • Создать...