Dialog dla kompilacjia dla Androida

Dialog dla kompilacjia dla Androida
PD
  • Rejestracja:około 13 lat
  • Ostatnio:ponad 4 lata
  • Postów:63
0

Witam
Przed skasowaniem rekodu chciałbym żeby user androida potwierdził swój zamiar bo jest nieodwracalny.
Android na to że jest kłopot: "Blocking dialogs not implemented on this platform."
Proszę o podpowiedź.
Pozdrawia
Piotr

Kopiuj
if MessageDlg ('Do you want a double message?',
TMsgDlgType.mtConfirmation,
[TMsgDlgBtn.mbYes, TMsgDlgBtn.mbNo],
0) = mrYes then

ShowMessage ('Hello');
edytowany 1x, ostatnio: flowCRANE
abrakadaber
abrakadaber
  • Rejestracja:ponad 12 lat
  • Ostatnio:8 miesięcy
  • Postów:6610
0

Chcesz pomocy - pokaż kod - abrakadabra źle działa z techniką.
woolfik
  • Rejestracja:ponad 17 lat
  • Ostatnio:około 10 godzin
  • Postów:1597
1

Możesz też skorzystać z odpowiedniego interfejsu przygotowanego pod FMX.
http://docwiki.embarcadero.com/Libraries/Tokyo/en/FMX.Platform.IFMXDialogServiceSync
oraz http://docwiki.embarcadero.com/Libraries/Tokyo/en/FMX.Platform.IFMXDialogServiceAsync.MessageDialogAsync

Użycie nie jest tak proste jak w przypadku messagedialog ale może mój testowy kod Ci podpowie jak tego używać:

Kopiuj
procedure TfmMain.RegisterApp(Sender: TObject);
var
    vDialog: IFMXDialogServiceAsync;
begin
    if not  TPlatformServices.Current.SupportsPlatformService(IFMXDialogServiceAsync, vDialog) then
        Exit;
    vDialog.InputQueryAsync('Email',['Put your email address'],[''],
      procedure(const vMR: TModalResult; const AValues: array of string)
      begin
        if vMR <> mrOk then
          Exit;
        if AValues[0] <> '' then
        begin
            TdmRESTModul.Instance.ParamByName('email',AValues[0]);
            TdmRESTModul.Instance.Execute('registration');
        end;
      end
    );
end;
PD
  • Rejestracja:około 13 lat
  • Ostatnio:ponad 4 lata
  • Postów:63
0

Dziękuje to dobra podpowiedź!

Ja używałem wcześniej:

Kopiuj
TDialogServiceAsync.InputQuery('Enter New Item', ['Name', 'Miejsce'], ['',''], Self.OnInputQuery_Close)

Tak naprawdę szukam prostego okna dialogowego podobnego do tradycyjnego MessageDlg w którym będą dwa przyciski OK lub Cancel lub inny zestaw
teraz muszę sobie sam tworzyć na to nową formatkę.

edytowany 1x, ostatnio: flowCRANE
KA
  • Rejestracja:prawie 20 lat
  • Ostatnio:2 minuty
  • Lokalizacja:Gorlice
1

To co podał @woolfik to przykład ten interfejs IFMXDialogServiceAsync ma też inne metody i chyba powinieneś użyć MessageDialogAsync.


Nie odpowiadam na PW w sprawie pomocy programistycznej.
Pytania zadawaj na forum, bo:
od tego ono jest ;) | celowo nie zawracasz gitary | przeczyta to więcej osób a więc większe szanse że ktoś pomoże.
woolfik
otóż to bo dzięki temu jesteś "uodporniony" na zmianę platformy czy to Win/IOS/OS X/Android - a wkrótce pewnie i GUI pod Linuxa ;)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.