我正在尝试使动态生成的 html 5 图形显示在 Blackberry 10 Cascades 的 web 视图中。我已经确认了我生成的 html5,绘制了正确的图表。我的问题是,当我尝试在 Blackberry 10 Cascades Beta 3 SDK(使用 Blackberry 10 Dev Alpha Simulator)中实现这一点时,应该显示图表的 webview 看起来像这样:
以下是导致此错误的代码:
//html_ already contains the html-5 code to make the graph at this point in the code
//This is the file path to a local file that is actually accessable in the emulator
//and not just from Windows
//
QFile *chartFile = new QFile("app/native/assets/data/chart.html");
if (chartFile->open(QIODevice::WriteOnly)) {
chartFile->write(html_.toUtf8());
chartFile->flush();
chartFile->close();
}
if (chartFile) delete chartFile;
if (graphView_) {
graphView_->setHtml("");
graphView_->setUrl(QUrl::fromLocalFile("app/native/assets/data/chart.html"));
}
我检查了该文件的权限,将它们全部设置为允许(知道 Unix 样式权限的人的权限为 777)。
我将 access_internet 添加到 bar-descriptor.xml 中,尽管我的应用程序已经能够访问远程站点,只是想看看这是否能解决它,但它没有。
我一直在寻找解决这个问题的方法,但我没有。
如果有人可以帮助我解决这个问题,将不胜感激。
-------------------------------------------------- -----
更新:
我更改了代码以直接设置html,现在我有了:
if (graphView_) {
graphView_->setHtml(html_, QUrl("app/native/assets/data/chart.html"));
}
但什么都没有显示。相对于我的基本网址,我似乎有错误的相对路径。
我的基本网址是:QUrl("app/native/assets/data/chart.html")
我的相对路径都以:./Highcharts/js/...
我的相对路径位于:app/native/assets/data/Highcharts/js
在我看来,这应该可以工作,但是当我这样做时,我只是一个空白屏幕,好像它找不到我的相对路径。所以我也不知道这里发生了什么。