DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: lixuan123
今日帖子: 20
在线用户: 10
导航: 论坛 -> 移动应用开发 斑竹:flyers,iamdream  
作者:
男 ooolinux (ooolinux) ▲△△△△ -
普通会员
2023/1/25 20:41:53
标题:
RAD11.2安卓虚拟键盘ObtainKeyboardRect在红米手机安卓11系统上无效 浏览:526
加入我的收藏
楼主: 网上的代码:
//获取虚拟键盘矩形,添加到FMX.VirtualKeyboard.Android.pas
function ObtainKeyboardRect: TRect;
var
  ContentRect, TotalRect: JRect;
begin
  ContentRect := TJRect.Create;
  TotalRect := TJRect.Create;
  MainActivity.getWindow.getDecorView.getWindowVisibleDisplayFrame(ContentRect);
  MainActivity.getWindow.getDecorView.getDrawingRect(TotalRect);
  Result := TRectF.Create(ConvertPixelToPoint(TPointF.Create(TotalRect.left, TotalRect.top + ContentRect.height)),
    ConvertPixelToPoint(TPointF.Create(TotalRect.right, TotalRect.bottom))).Truncate;
end;
无论虚拟键盘显示还是隐藏,定时器获取矩形的高度总是为82。
同样的代码,用RAD10.2.2编译在LG安卓8手机上效果正常。
不知道大家怎么处理在虚拟键盘隐藏时触发事件?
如果用ObtainKeyboardRect这个补丁,在安卓11上是否有效果?
----------------------------------------------
-
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行70.3125毫秒 RSS