Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/223.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java AChartEngine-带有parse.com数据的图表赢得';t显示_Java_Android_Parse Platform_Achartengine - Fatal编程技术网

Java AChartEngine-带有parse.com数据的图表赢得';t显示

Java AChartEngine-带有parse.com数据的图表赢得';t显示,java,android,parse-platform,achartengine,Java,Android,Parse Platform,Achartengine,我想创建基于parse.com数据的图表应用程序。我已经阅读了一些示例和教程,但在显示图表方面仍然存在问题。下面是我的代码: import android.content.Context; import android.content.Intent; import android.graphics.Color; import android.util.Log; import com.parse.GetCallback; import com.parse.ParseException; impo

我想创建基于parse.com数据的图表应用程序。我已经阅读了一些示例和教程,但在显示图表方面仍然存在问题。下面是我的代码:

import android.content.Context;
import android.content.Intent;
import android.graphics.Color;
import android.util.Log;

import com.parse.GetCallback;
import com.parse.ParseException;
import com.parse.ParseObject;
import com.parse.ParseQuery;

import org.achartengine.ChartFactory;
import org.achartengine.GraphicalView;
import org.achartengine.chart.PointStyle;
import org.achartengine.model.XYMultipleSeriesDataset;
import org.achartengine.model.XYSeries;
import org.achartengine.renderer.XYMultipleSeriesRenderer;
import org.achartengine.renderer.XYSeriesRenderer;

import java.util.ArrayList;

public class LineGraph {

    public ArrayList<Integer> dataArray;

    XYMultipleSeriesDataset dataset;
    XYMultipleSeriesRenderer renderer;
    public static boolean ClickEnabled = true;

    public Intent getIntent(Context context) {

        ArrayList<Integer> y = this.dataArray;

        XYSeries seriesY = new XYSeries("Y");
        for (int i = 0; i < y.size(); i++) {
            seriesY.add(i, y.get(i));
        }
        dataset = new XYMultipleSeriesDataset();
        dataset.addSeries(seriesY);

        renderer.setPanEnabled(true, false);
        renderer.setClickEnabled(ClickEnabled);
        renderer.setBackgroundColor(Color.WHITE);
        renderer.setApplyBackgroundColor(true);
        renderer.setChartTitle("Simple data");
        renderer.setAxesColor(Color.BLACK);
        XYMultipleSeriesRenderer mRenderer = new XYMultipleSeriesRenderer();
        XYSeriesRenderer renderer = new XYSeriesRenderer();
        renderer.setColor(Color.RED);
        renderer.setPointStyle(PointStyle.DIAMOND);
        mRenderer.addSeriesRenderer(renderer);

        Intent intent = ChartFactory.getLineChartIntent(context, dataset, mRenderer, "Line Graph Title");
        return intent;
    }

    public void getData() {
        ParseQuery<ParseObject> query = ParseQuery.getQuery("Counters_data");
        query.getInBackground("lxFzCTeOcl", new GetCallback<ParseObject>() {
            public void done(ParseObject parseObject, ParseException e) {

                if (e == null) {
                    String object = parseObject.getString("value");
                    Integer objectValue = Integer.parseInt(object);
                    if (dataArray == null) {
                        dataArray = new ArrayList<Integer>();
                        dataArray.add(objectValue);
                    }
                } else {
                    Log.d("score", "Error: " + e.getMessage());
                }
            }
        });
    }
}
和XML部分:

<Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/counters"
        android:onClick="lineGraphHandler"
        android:text="Charts"
        android:id="@+id/charts"/>

这是我的日志:

03-26 08:42:13.096 1229-1229/com.example.tst D/dalvikvm﹕ 延迟启用 检查JNI 03-26 08:42:13.4871229-1229/com.example.tst D/libEGL﹕ 加载 /system/lib/egl/libEGL_genymotion.so 03-2608:42:13.491 1229-1229/com.example.tst D/﹕ 主机连接::get()新主机 已建立连接0xb94f4270,tid 1229 03-26 08:42:13.551 1229-1229/com.example.tst D/libEGL﹕ 加载 /system/lib/egl/libGLESv1_CM_genymotion.so 03-26 08:42:13.551 1229-1229/com.example.tst D/libEGL﹕ 加载 /system/lib/egl/libGLESv2_genymotion.so 03-26 08:42:14.035 1229-1229/com.example.tst W/EGL_genymotion﹕ eglSurfaceAttrib不是 已实施03-26 08:42:14.039 1229-1229/com.example.tst E/opengl渲染器﹕ 从GradieCache 03-26获取最大纹理大小 08:42:14.043 1229-1229/com.example.tst E/opengl﹕ 最大纹理大小:4096 03-26 08:42:14.055 1229-1229/com.example.tst E/opengl渲染器﹕ 从中获取最大纹理大小 缓存::initConstraints()03-26 08:42:14.063 1229-1229/com.example.tst E/opengl渲染器﹕ 最大纹理大小:409603-2608:42:14.063 1229-1229/com.example.tst D/opengld﹕ 正在启用调试模式0 03-26 08:42:50.327 1229-1229/com.example.tst D/dalvikvm﹕ GC\u用于\u ALLOC 释放200K,8%释放2975K/3228K,暂停10ms,总计13ms 03-26 08:42:51.6751229-1229/com.example.tst D/dalvikvm﹕ 释放的所有组件的GC\u 431K,14%空闲3056K/3540K,暂停22ms,总计28ms 03-26 08:42:52.043 1229-1229/com.example.tst W/EGL_genymotion﹕ eglSurfaceAttrib不是 已实施03-26 08:42:53.543 1229-1229/com.example.tst I/编舞﹕ 跳过了89帧!应用程序可能也在运行 在它的主线上做了很多工作。03-26 08:43:01.747 1229-1229/com.example.tst D/AndroidRuntime﹕ 关闭VM 03-26 08:43:01.7471229-1229/com.example.tst W/dalvikvm﹕ threadid=1:线程 带未捕获异常退出(组=0xa4d8fb20)03-26 08:43:01.767 1229-1229/com.example.tst E/AndroidRuntime﹕ 致命异常:主 进程:com.example.tst,PID:1229 java.lang.IllegalStateException: 无法在执行活动的方法 android.view.view$1.onClick(view.java:3823)位于 android.view.view.performClick(view.java:4438)位于 查看$PerformClick.run(view.java:18422) handleCallback(Handler.java:733)位于 dispatchMessage(Handler.java:95)位于 Looper.loop(Looper.java:136)位于 android.app.ActivityThread.main(ActivityThread.java:5017)位于 java.lang.reflect.Method.Invokenactive(本机方法)位于 java.lang.reflect.Method.invoke(Method.java:515)位于 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779) 位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595) dalvik.system.NativeStart.main(本机方法)由以下原因引起: java.lang.reflect.InvocationTargetException位于 java.lang.reflect.Method.Invokenactive(本机方法)位于 java.lang.reflect.Method.invoke(Method.java:515)位于 android.view.view$1.onClick(view.java:3818)位于 android.view.view.performClick(view.java:4438)位于 查看$PerformClick.run(view.java:18422) handleCallback(Handler.java:733)位于 dispatchMessage(Handler.java:95)位于 Looper.loop(Looper.java:136)位于 android.app.ActivityThread.main(ActivityThread.java:5017)
位于java.lang.reflect.Method.Invokenactive(本机方法) java.lang.reflect.Method.invoke(Method.java:515)位于 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779) 位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
在dalvik.system.NativeStart.main(本机方法),由以下原因引起: 位于的java.lang.NullPointerException getIntent(LineGraph.java:36)位于 com.example.tst.MainActivity.lineGraphHandler(MainActivity.java:44)
位于java.lang.reflect.Method.Invokenactive(本机方法) java.lang.reflect.Method.invoke(Method.java:515)位于 android.view.view$1.onClick(view.java:3818)位于 android.view.view.performClick(view.java:4438)位于 查看$PerformClick.run(view.java:18422) handleCallback(Handler.java:733)位于 dispatchMessage(Handler.java:95)位于 Looper.loop(Looper.java:136)位于 android.app.ActivityThread.main(ActivityThread.java:5017)
位于java.lang.reflect.Method.Invokenactive(本机方法) java.lang.reflect.Method.invoke(Method.java:515)位于 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779) 位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
在dalvik.system.Nativestar.main(本地方法)03-26 08:43:04.507 1229-1229/com.example.tst I/Process﹕ 发送信号。PID:1229信号:9

我不明白问题出在哪里。我的应用程序启动,但当我按下“图表”按钮时立即崩溃。是数据类型的问题还是因为我误解了什么? 先谢谢你

我试着这样做,但还是失败了:

public void done(ParseObject parseObject, ParseException e) {

                if (e == null) {
                    String object = parseObject.getString("value");
                    Integer objectValue = Integer.parseInt(object);
                    if (dataArray == null) {
                        dataArray = new ArrayList<Integer>();
                        dataArray.add(objectValue);

                        ArrayList<Integer> y = dataArray;
                        XYSeries seriesY = new XYSeries("Y");
                        for (int i = 0; i < y.size(); i++) {
                            seriesY.add(i, y.get(i));

                            dataset = new XYMultipleSeriesDataset();
                            dataset.addSeries(seriesY);
                        }

                    }
public void done(ParseObject ParseObject,parsee异常){
如果(e==null){
String对象=parseObject.getString(“值”);
整数objectValue=Integer.parseInt(对象);
if(dataArray==null){
dataArray=新的ArrayList();
add(objectValue);
ArrayList y=数据数组;
XYS系列
public void done(ParseObject parseObject, ParseException e) {

                if (e == null) {
                    String object = parseObject.getString("value");
                    Integer objectValue = Integer.parseInt(object);
                    if (dataArray == null) {
                        dataArray = new ArrayList<Integer>();
                        dataArray.add(objectValue);

                        ArrayList<Integer> y = dataArray;
                        XYSeries seriesY = new XYSeries("Y");
                        for (int i = 0; i < y.size(); i++) {
                            seriesY.add(i, y.get(i));

                            dataset = new XYMultipleSeriesDataset();
                            dataset.addSeries(seriesY);
                        }

                    }