我正在尝试将初始焦点设置为应用程序每个页面中的第一个输入字段。
我在下面的文章中实现了代码,并且效果很好。
How to Set Initial Focus in a View?
但是我发现,当我从Fiori Launchpad打开应用程序时,它不适用于应用程序中的第一个视图/页面。我发现以下代码在onAfterShow
之后开始执行。我在不同的OS平台和设备上进行了测试,结果有些奇怪。上面的代码适用于所有基于Android的设备。在iOS上,它完全不起作用,在带有chrome浏览器的Windows上,它对应用程序的首页:(。
SAP代码
请帮助解决这个问题。
答案 0 :(得分:0)
通过在第一页的setTimeout函数中传递大约200毫秒来解决该问题,并且效果很好
答案 1 :(得分:0)
此处是that answer的作者。浏览源代码和文档一段时间后,我不得不承认我也找不到任何可接受的解决方案。我的印象是FLP开发人员希望确保该应用程序不会干扰设置初始焦点。
API及其文档的缺乏强烈表明,这种预防背后有令人信服的原因(可能与之相关)。
我的建议是不要依靠超时,而要保持一致的用户体验(UX),即始终将重点放在由SAP设计的应用程序标题上。