Если нажимаю Отмена в InputQuery,
InputQuery('Укажите свой ответ', ['Ответ'], [''],
procedure(const AResult: TModalResult; const AValues: array of string)
begin
if (AResult=mrOk) and (AValues[0].Trim<>'') then
begin
// делаем что-то с AValues[0]
end;
end
);
то получаю Segmentation Fault в FMX.Dialogs.Android (которого в Seattle не существовало)
procedure TFMXDialogListener.onDialogClosed(modalResult: Integer;
values: TJavaObjectArray<JString>);
var
I: Integer;
begin
FModalResult := modalResult;
if values <> nil then
begin
SetLength(FValues, values.Length);
for I := 0 to values.Length - 1 do
begin
if FModalResult = mrOk then
FValues[I] := JStringToString(values.Items[I])
else
FValues[I] := FDefaultValues[I]; // тут
end
end;
TThread.Queue(FCallerThread, DoDialogClosed);
end;
Где у меня ошибка?
PS. Delphi 10.1 Berlin
PPS. в справке сказано Warning: InputQuery is deprecated. Please use Platform.IFMXDialogServiceAsync.MessageDialogAsync. InputQuery вышел из моды? )