【问题标题】:Charset in browsercomponent浏览器组件中的字符集
【发布时间】:2016-12-04 18:29:14
【问题描述】:

在Codenameone中使用BrowserComponent时遇到问题:在模拟器中调用BrowserComponent中的dropbox授权URL时,页面显示出来了,但是charset好像不对:

我无法阅读浏览器中显示的文本(无意义的文本) - 但是当我将文本从浏览器组件复制并粘贴到文本编辑器时,文本是可读的。如何使文本在浏览器组件中可读?

这是我使用浏览器组件的代码:

Form tmpBrowserForm = new Form(„DropBoxAccess“);
tmpBrowserForm.setLayout(new BoxLayout(BoxLayout.Y_AXIS));
WebBrowser tmpBrowser = new WebBrowser(„https://www.dropbox.com/oauth2/authorize?response_type=code&client_id=xyz“);
tmpBrowserForm.add(tmpBrowser);

【问题讨论】:

    标签: android codenameone


    【解决方案1】:

    确保浏览器中页面的编码设置正确,如果将文本加载到字符串并使用页面方法进行设置,请确保使用正确的本机编码加载字符串。

    例如永远不要使用新的String(byte[])

    【讨论】:

    • 感谢您的回复!我没有找到在 Codenameone 的浏览器组件中设置编码的方法 - 并且该页面在我笔记本电脑的本机浏览器中显示正确。浏览器组件中的哪些设置可以用来改变编码?
    • 我猜这里是因为您没有包含任何代码,并且有 许多 方式来显示组件。页面中有用于编码的meta标签,设置了吗?
    • 页面头部有一个meta set:我用一个很简单的代码来包含浏览器组件:Form tmpBrowserForm = 新表单(“DropBoxAccess”); tmpBrowserForm.setLayout(new BoxLayout(BoxLayout.Y_AXIS)); WebBrowser tmpBrowser = new WebBrowser(„dropbox.com/oauth2/…“); tmpBrowserForm.add(tmpBrowser);
    • 评论中的代码不可读,请编辑您的问题并在此处发布代码并在此处发表评论,以便我收到帖子已更改的通知。您不应该将浏览器组件放在BoxLayout 中,因为这会导致设备上的布局问题,将其放置在表单边框布局的中心。请注意,这可能是 JavaFX 浏览器中的问题,因此我建议在设备上对其进行测试,看看它是否在那里工作
    • 我现在在描述中添加了代码。当然,我会将布局更改为 BorderLayout。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-06-15
    • 1970-01-01
    • 1970-01-01
    • 2011-01-16
    • 1970-01-01
    • 2017-03-16
    • 1970-01-01
    相关资源
    最近更新 更多