我正在开发一个使用 WebView 来显示 Facebook 登录页面的 Android 应用程序。页面加载得很漂亮,我可以选择用户名/密码文本框,但输入它们不起作用。也就是说,它们肯定有输入焦点(它们有橙色焦点突出显示框和闪烁的光标),但输入它们绝对没有任何作用。我不确定,但我认为表单按钮可能也在播放 - 它们似乎只是刷新页面,而不是提交表单。
明确一点,虽然我对让 Facebook 运行特别感兴趣,但我确信这不是 Facebook 问题,因为其他网站(Google 等)也显示相同的行为。
有人知道可能是什么问题吗?
最佳答案
事实证明,问题显然是 WebView 没有焦点。
我发现使用箭头键将焦点放在文本框上会导致它们工作,因此我推测某处存在没有焦点的问题,很可能是 WebView 没有焦点。果然,添加以下行似乎可以解决问题:
webView.requestFocus(View.FOCUS_DOWN);
我仍然无法准确解释为什么会首先出现问题 - 文本框应该可以工作,无论它们是通过被点击还是通过“箭头”来获得焦点 - 但至少我有一个解决方案似乎有效。
感谢您的意见。
关于android - 为什么 Android WebView 拒绝用户输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2083909/