而開發Android
應用程序使用Rickshaw來繪製一些圖表時,我遇到了這個奇怪的問題:在Galaxy Nexus S(具有OS 4.0.4)時,圖表完美繪製,而在摩托羅拉Defy(CyanogenMod7,擁有OS 2.3.7)沒有。這可能是操作系統版本問題嗎?誰能幫我這個?Javascript圖表不能繪製不同的android api版本
下面是代碼:
public class RickshawTestActivity extends Activity {
private WebView webView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
webView = new WebView(this);
webView.getSettings().setJavaScriptEnabled(true);
setContentView(webView);
webView.loadUrl("file:///android_asset/chart.html");
}
}
這裏是assets/chart.html
<!doctype>
<script src="vendor/d3.min.js"></script>
<script src="vendor/d3.layout.min.js"></script>
<script src="rickshaw.min.js"></script>
<div id="chart"></div>
<script>
var data = [ {
x : 1910,
y : 92228531
}, {
x : 1920,
y : 106021568
}, {
x : 1930,
y : 123202660
}, {
x : 1940,
y : 132165129
}, {
x : 1950,
y : 151325798
}, {
x : 1960,
y : 179323175
}, {
x : 1970,
y : 203211926
}, {
x : 1980,
y : 226545805
}, {
x : 1990,
y : 248709873
}, {
x : 2000,
y : 281421906
}, {
x : 2010,
y : 308745538
} ];
var graph = new Rickshaw.Graph({
element : document.querySelector("#chart"),
width : 580,
height : 250,
series : [ {
color : 'steelblue',
data : data
} ]
});
graph.render();
</script>
的數據是有效的,並且所有引用的.js
文件中找到。 這也適用於我的Mozilla 13瀏覽器。
由於
編輯:
我還測試這片在不同的仿真器的代碼,並得出結論上面的代碼只對OS版本3.0和以上。在低於3.0的操作系統版本上,這不起作用。
現在我該如何讓它工作?謝謝
編輯: 我需要一個跨平臺的圖書館。
你是什麼意思的跨平臺。你的問題是關於開發一個Android應用程序。 – Robert 2012-07-12 13:34:51
你真的想讓我的50位代表提出這個問題,對吧? :) – overbet13 2012-07-13 06:47:47
我想要的是在其他平臺上的可重用性。無論如何,老兄,你可以給我這個答案,當賞金沒有被提出這個問題時,順便說一句,這不是一個很好的答案,我的意思是這是很好的文件和東西,但沒有解決我的問題。抱歉。 – overbet13 2012-07-13 06:54:15