【发布时间】:2015-11-28 21:44:29
【问题描述】:
简介
请注意,以下链接中提供的解决方案并没有帮助我解决我的问题:
How to detect when an Android app goes to the background and come back to the foreground
你好堆栈溢出社区
我正在尝试创建一个简单的 Android 应用程序,该应用程序允许用户选择文本和大写或小写字母,以及删除多余空格的功能。我的应用程序只有三个对象,即TButton 中的两个和TMemo 中的一个。我遇到了TMemo 和虚拟键盘的问题。每当虚拟键盘弹出时,它就会显示在TMemo 的底部。通过使用TForm 的OnVirtualKeyboardHidden 和OnVirtualKeybaordShown 事件处理程序,我设法解决了这个问题。我是这样做的:
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 TAlignLayout ins 没有恢复回 alClient。
如果有人能帮助我解决这个TMemo 和虚拟键盘问题,我将不胜感激。
提前谢谢你!
【问题讨论】:
标签: android firemonkey delphi-xe8 android-virtual-keyboard