0

序章

以下のリンクで提供されている解決策は、私の問題を解決するのに役立たなかったことに注意してください。

Android アプリがバックグラウンドに移行してフォアグラウンドに戻るタイミングを検出する方法

ハロー スタック オーバーフロー コミュニティ

ユーザーがテキストと大文字または小文字を選択し、余分なスペースを削除する機能を備えたシンプルな Android アプリを作成しようとしています。私のアプリには 3 つのオブジェクトしかありません。つまり、 の 2TButtonつと の 1 つですTMemoTMemoおよび仮想キーボードで問題が発生しました。仮想キーボードがポップアップするたびに、 の下部に表示されますTMemoOnVirtualKeyboardHiddenとのOnVirtualKeybaordShownイベント ハンドラを使用することで、この問題を解決することができましたTForm。これが私がそれをした方法です:

procedure TfrmEditor.FormVirtualKeyboardHidden(Sender: TObject;
  KeyboardVisible: Boolean; const Bounds: TRect);
begin
  memInput.Align := memInput.Align.alClient;
end;

procedure TfrmEditor.FormVirtualKeyboardShown(Sender: TObject;
  KeyboardVisible: Boolean; const Bounds: TRect);
begin
  if memInput.Align <> memInput.Align.alTop then
  begin
    memInput.Align := memInput.Align.alTop;
    memInput.Height := memInput.Height - Bounds.Height;
  end;
end;

問題

ここに私の問題があります。仮想キーボードが表示され、別のアプリに切り替えて元に戻すと、仮想キーボードは非表示になりますが、TMemo TAlignLayoutinsは元に戻りませんalClient

誰かがこのTMemo仮想キーボードの問題で私を助けてくれれば、本当に感謝しています.

前もって感謝します!

4

1 に答える 1