Перейти к содержанию
  • Регистрация
  • 0
Авторизация  
konung

Что нужно использовать вместо ShowMessage на Андроиде?

Вопрос

Есть такая беда с ShowMessage и иже с ними:

 

Среда: RAD Studio XE6
Аппарат: Galaxy Nexus (4.2.1).

  1. Отображаем сообщение
  2. Сворачиваем программу (например по кнопке Home).
  3. Возвращаемся к всё еще запущенному приложению - оно висит мертво.

В иных приложениях - замечал, что диалоговые окна в таких ситуациях по обыкновению закрывают. Надо именно так делать? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Рекомендуемые сообщения

  • 0

Сами пишем - сами отвечаем ;)

 

Workaround

Решение: On Android, Use TPopup Instead of ShowMessage

ShowMessage can become unresponsive when the user changes the focus in an Android app. We recommend using TPopup instead. When the user changes the focus away from a popup, the popup closes as expected, but it can be easily invoked again.

 

Хотя в QC висит всё же как не решенное http://qc.embarcadero.com/wc/qcmain.aspx?d=119285

 

Благодарю за ответ(ы) ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.
Авторизация  

  • Похожий контент

    • От notricky
      Есть ли способ использовать Попап, при этом внутри него вводить текст?
      В данный момент Edit не получает фокус, не видна каретка, не вводится текст, попап рандомно может закрыться.
    • От notricky
      Не нашел тега TPopup. Напишу тут.
      Ситуация в следующем. Я использую TPopup + TCalloutPanel для хинтов (подсказок). С анимацией FadeIn FadeOut.
      Все вроде просто.
      На основной форме есть стандартная проверка FormKeyDown
      if Key in [vkHardwareBack] then begin TPlatformServices.Current.SupportsPlatformService(IFMXVirtualKeyboardService, IInterface(FService)); if (FService <> nil) and (TVirtualKeyboardState.Visible in FService.VirtualKeyBoardState) then begin DebugLog('KeyboardOnBackButton'); end else begin Key := 0; if ItemLayout.Visible then begin DebugLog('ItemLayoutBackButton'); btCancelClick(btCancel); end else begin DebugLog('MainLayoutBackButton'); MessageDlg('Are you sure to exit now?', TMsgDlgType.mtConfirmation, [TMsgDlgBtn.mbOK, TMsgDlgBtn.mbCancel], -1, procedure (const AResult: TModalResult) begin if AResult = mrOk then begin DebugLog('CloseOnBackButton'); Close; end; end); end; end; end В общем ничего сверхестественного.
      Затем, когда появляется хинт:
      procedure TFParent.ShowHint(AControl: TControl; AText: string; ATitle: string=''; Duration: single = 3; ImageIndex: integer = -1); begin DebugLog('ShowHint'); lbHint.Text := AText; puHint.PlacementTarget := AControl; faHintFadeOut.Delay := Duration; puHint.IsOpen := true; ivHint.Visible := ImageIndex <> -1; lbHintTitle.Text := ATitle; lbHintTitle.Visible := ATitle <> ''; end; все тоже хорошо. Однако, когда я нажимаю кнопку назад - сначала пропадает хинт. А если я нажимаю снова кнопку назад, то вообще говоря я жду два варианта:
      ItemLayout переходит в MainLayout Программа запрашивает выход MessageDlg Но на деле приложение просто закрывается. При чем без ошибок.
      Что с этим можно сделать?
    • От Nix0N
      Не отображаются кастомные item's при разворачивании списка TComboBox. Нет отображения конкретно в выпадающем списке, в самом TComboBox всё ок.  Пробовал перерисовку во время события onPopup, создание на различных родителях и т.д. - не помогло. Подскажите в чем может быть дело ? Спасибо.
       

       
      Чистый проект прилагается: RAD Studio XE6
      CustomComboBox.zip
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

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