这甚至可能吗?我对此表示怀疑,但我想确认一下。
答案 0 :(得分:2)
如果您不允许编写任何Java代码来执行此“方向锁定”,那么,不,不可能从JavaScript锁定应用程序的方向。
如果您检测到Detect rotation of Android phone in the browser with javascript链接中提到的方向更改并相应地重新调整了HTML,则可以模拟“锁定”。但这似乎做了很多工作。
如果您可以使用Java,那么您可以通过WebView.addJavascriptInterface方法公开Java对象,并使用Activity.setRequestedOrientation和Activity.getRequestedOrientation方法编写一些JavaScript来获取/设置方向。< / p>
答案 1 :(得分:0)
为什么不呢?我想到了一些简单的技巧......从Javascript你用一些自定义网址调用document.open()
方法。在shouldOverrideUrlLoading view,url)
上,您可以使用自定义网址捕获该通话,因此您可以随意执行任何操作。
也许我错过了什么...但我会尝试。
而且,我认为你已经知道了,但你必须使用WebView
在你的应用程序中嵌入某种Web浏览器。
====编辑====
好吧,似乎我错过了一些东西,并且有一种更加优雅的方式来做到这一点。有this tutorial(Android代码的绑定JavaScript代码部分),它向您展示如何添加JavaScriptAndroid接口,如果我没有错,则与您想要的内容相关。我没试过,但似乎并不太难。
答案 2 :(得分:0)
在我的工作场所,我们在设备浏览器中遇到了类似的方向更改问题。当方向改变时,我们只是弹出一个模态窗口。它通知用户将设备旋转回来继续。似乎在我们所有经过测试的设备上运行良好。