我在將數據添加到圖表時收到此NullPointerException。這裏是我的我的一些數據(沒有爲空):將數據添加到AChartEngine時的NPE折線圖
11-21 21:09:36.286: I/System.out(10682): 51.0 | -13.3 | 77.0
11-21 21:09:36.286: I/System.out(10682): 55.0 | -13.0 | 78.0
11-21 21:09:36.294: I/System.out(10682): 52.0 | -12.8 | 79.0
11-21 21:09:36.294: I/System.out(10682): 57.0 | -12.8 | 79.0
11-21 21:09:36.294: I/System.out(10682): 57.0 | -12.7 | 80.0
11-21 21:09:36.294: I/System.out(10682): 58.0 | -11.6 | 80.0
11-21 21:09:36.294: I/System.out(10682): 57.0 | -10.6 | 80.0
11-21 21:09:36.294: I/System.out(10682): 58.0 | -9.1 | 81.0
11-21 21:09:36.301: I/System.out(10682): 59.0 | -8.9 | 82.0
11-21 21:09:36.301: I/System.out(10682): 59.0 | -8.6 | 82.0
11-21 21:09:36.301: I/System.out(10682): 59.0 | -8.8 | 82.0
11-21 21:09:36.301: I/System.out(10682): 59.0 | -9.0 | 83.0
11-21 21:09:36.301: I/System.out(10682): 58.0 | -9.5 | 83.0
11-21 21:09:36.301: I/System.out(10682): 57.0 | -9.6 | 83.0
11-21 21:09:36.301: I/System.out(10682): 58.0 | -9.3 | 83.0
錯誤日誌說:
11-21 21:09:36.426: E/AndroidRuntime(10682): FATAL EXCEPTION: main
11-21 21:09:36.426: E/AndroidRuntime(10682): java.lang.NullPointerException
11-21 21:09:36.426: E/AndroidRuntime(10682): at android.view.ViewConfiguration.get(ViewConfiguration.java:323)
11-21 21:09:36.426: E/AndroidRuntime(10682): at android.view.View.<init>(View.java:3271)
11-21 21:09:36.426: E/AndroidRuntime(10682): at org.achartengine.GraphicalView.<init>(GraphicalView.java:91)
11-21 21:09:36.426: E/AndroidRuntime(10682): at org.achartengine.ChartFactory.getLineChartView(ChartFactory.java:70)
11-21 21:09:36.426: E/AndroidRuntime(10682): at com.jasonflaherty.snoteldata.BCMarkerInformation$CheckTask.onPostExecute(BCMarkerInformation.java:321)
11-21 21:09:36.426: E/AndroidRuntime(10682): at com.jasonflaherty.snoteldata.BCMarkerInformation$CheckTask.onPostExecute(BCMarkerInformation.java:1)
11-21 21:09:36.426: E/AndroidRuntime(10682): at android.os.AsyncTask.finish(AsyncTask.java:631)
11-21 21:09:36.426: E/AndroidRuntime(10682): at android.os.AsyncTask.access$600(AsyncTask.java:177)
11-21 21:09:36.426: E/AndroidRuntime(10682): at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:644)
11-21 21:09:36.426: E/AndroidRuntime(10682): at android.os.Handler.dispatchMessage(Handler.java:99)
11-21 21:09:36.426: E/AndroidRuntime(10682): at android.os.Looper.loop(Looper.java:137)
11-21 21:09:36.426: E/AndroidRuntime(10682): at android.app.ActivityThread.main(ActivityThread.java:5289)
11-21 21:09:36.426: E/AndroidRuntime(10682): at java.lang.reflect.Method.invokeNative(Native Method)
11-21 21:09:36.426: E/AndroidRuntime(10682): at java.lang.reflect.Method.invoke(Method.java:525)
11-21 21:09:36.426: E/AndroidRuntime(10682): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:739)
11-21 21:09:36.426: E/AndroidRuntime(10682): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:555)
11-21 21:09:36.426: E/AndroidRuntime(10682): at dalvik.system.NativeStart.main(Native Method)
321線有我的圖表設置:
mChart = ChartFactory.getLineChartView(ctx, mDataset, mRenderer);
我已經加入其他數據到這樣的圖表設置,所以我不確定這個NPE來自哪裏。只是一個供參考,根據我的logcat的,它並沒有達到這個遠了代碼,但我有一個表的佈局設置,如下所示:
<TableRow
android:id="@+id/GraphRow"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#59473d"
android:gravity="center_horizontal" >
<LinearLayout
android:id="@+id/chart"
android:layout_width="fill_parent"
android:layout_height="200dp"
android:layout_span="4"
android:background="#000000"
android:orientation="horizontal" />
</TableRow>
我曾嘗試添加圖表只是一個簡單的XML佈局只是linearlayout ...所以我相當肯定這不是問題。
我設置的佈局:LinearLayout layout = (LinearLayout) findViewById(R.id.chart);
我將它添加到佈局:layout.addView(mChart);
上在這裏開始任何想法?我目前處於虧損狀態。還有什麼我可以添加到問題?
我用getBaseContext();而不是ctx,並能夠讓它顯示數據:mChart = ChartFactory.getLineChartView(ctx,mDataset,mRenderer); – jasonflaherty