带有截击和JSON的android

拐角边缘

最近,我一直在从事已分配给我的应用程序。我做了一个textview来显示一些我从树莓派的JSON URL中加载的数据(我知道这很愚蠢,但我不在乎)。现在,我想在称为“ barchart”的文件中显示相同的数据。这是mikephil制作的已知api(如果您想知道的话,请参阅“ https://github.com/PhilJay/MPAndroidChart ”)。我似乎无法使其正常工作。我让应用程序运行,它可以显示图形,但是没有用数据填充它,它保持在0.0 ...

现在是我的问题:谁能告诉我我做错了什么?

public class grafiek extends Activity {

//public static final String JSON_URL = "http://myip/test.php";
//public static String agv = "";
//public static String binnenschip = "";
/*public static String vrachtwagen;
public static String zeeschip;
public static String opslag;
public static String trein;
public static String diversen;*/

public static int agvz;
public static int binns;
/*public static int vracht;
public static int zschip;
public static int opsl;
public static int trei;
public static int divers;*/
//String aantalAgv = MainActivity.agv;
//String aantalBinnenschip = MainActivity.binnenschip;
//String aantalVrachtwagen=MainActivity.vrachtwagen;
//String aantalZeeschip=MainActivity.zeeschip;
//String aantalOpslag=MainActivity.opslag;
//String aantalTrein=MainActivity.trein;
//String aantalDiversen=MainActivity.diversen;
int counter = 0;
String loginURL="http://myip/test.php";
String datas = "";
RequestQueue requestQueue;
BarChart chart;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.grafiek);
    if(savedInstanceState!=null){
        Log.d("STATE", savedInstanceState.toString());
    }
    requestQueue = Volley.newRequestQueue(this);
    chart = (BarChart) findViewById(R.id.chart);
    JsonObjectRequest jor = new JsonObjectRequest(Request.Method.GET, loginURL, null,
            new Response.Listener<JSONObject>() {
                @Override
                public void onResponse(JSONObject response) {

                    try{

                        JSONArray ja = response.getJSONArray("result");
                        for(int i=0; i < ja.length(); i++){

                            JSONObject jsonObject = ja.getJSONObject(i);

                            // int id = Integer.parseInt(jsonObject.optString("id").toString());


                            String agv = jsonObject.getString("agv");
                            String binnenschip = jsonObject.getString("binnenschip");

                            agvz = Integer.parseInt(agv);
                            binns = Integer.parseInt(binnenschip);


                        }

                    }
                    catch(JSONException e){
                        e.printStackTrace();
                    }
                }
            },
            new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {
                    Log.e("Volley","Error");

                }
            }
    );
    requestQueue.add(jor);
    ArrayList<BarEntry> entries = new ArrayList<>();
    entries.add(new BarEntry(agvz, 0));
    entries.add(new BarEntry(binns, 1));
    BarDataSet dataset = new BarDataSet(entries, "Aantal containers");

    ArrayList<String> labels = new ArrayList<String>();
    labels.add("AGV");
    labels.add("Binnenschip");

    BarChart chart = new BarChart(this);
    setContentView(chart);

    BarData data = new BarData(labels, dataset);
    chart.setData(data);

    chart.setDescription("Aantal containers per platform");

    dataset.setColors(ColorTemplate.COLORFUL_COLORS);
    if(counter == 0) {
        chart.animateY(2500);
        counter++;
    }

}

如果有人可以帮助我,那就太好了!

银行

由于Volley是异步的,因此您应按以下方式更新代码(请注意// MOVE HERE...):

           JsonObjectRequest jor = new JsonObjectRequest(Request.Method.GET, loginURL, null,
                new Response.Listener<JSONObject>() {
                    @Override
                    public void onResponse(JSONObject response) {

                        try{

                            JSONArray ja = response.getJSONArray("result");
                            for(int i=0; i < ja.length(); i++){

                                JSONObject jsonObject = ja.getJSONObject(i);

                                // int id = Integer.parseInt(jsonObject.optString("id").toString());


                                String agv = jsonObject.getString("agv");
                                String binnenschip = jsonObject.getString("binnenschip");

                                agvz = Integer.parseInt(agv);
                                binns = Integer.parseInt(binnenschip);

                                // MOVE HERE...
                                ArrayList<BarEntry> entries = new ArrayList<>();
                                entries.add(new BarEntry(agvz, 0));
                                entries.add(new BarEntry(binns, 1));
                                BarDataSet dataset = new BarDataSet(entries, "Aantal containers");

                                ArrayList<String> labels = new ArrayList<String>();
                                labels.add("AGV");
                                labels.add("Binnenschip");

                                BarChart chart = new BarChart(this);
                                setContentView(chart);

                                BarData data = new BarData(labels, dataset);
                                chart.setData(data);

                                chart.setDescription("Aantal containers per platform");

                                dataset.setColors(ColorTemplate.COLORFUL_COLORS);
                                if(counter == 0) {
                                    chart.animateY(2500);
                                    counter++;
                                }
                            }

                        }
                        catch(JSONException e){
                            e.printStackTrace();
                        }
                    }
                },
                new Response.ErrorListener() {
                    @Override
                    public void onErrorResponse(VolleyError error) {
                        Log.e("Volley", "Error");

                    }
                }
        );
        requestQueue.add(jor);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

截击不发送带有参数的发布请求。

来自分类Dev

带有 json 处理和快速 Android 网络的 POST

来自分类Dev

带有PHP Slim和AngularJS的JSON

来自分类Dev

带有JSON和XML的Spring REST

来自分类Dev

带有JSON和Java的Yahoo Weather

来自分类Dev

带有 C# 和 Mono 的 Json

来自分类Dev

Android通知使用GCM和带有JSON消息的Java将其推送为空

来自分类Dev

带有selection和selectionArgs []的Android CursorLoader

来自分类Dev

带有Android和Google地图的TileOverlay

来自分类Dev

带有PageTransformer和SceneTransition的Android ViewPager

来自分类Dev

Android:带有RippleEffect和StateListAnimator的<include>

来自分类Dev

带有selection和selectionArgs []的Android CursorLoader

来自分类Dev

Android:带有AlarmManager和Service的AsyncTask

来自分类Dev

带有Android和Google地图的TileOverlay

来自分类Dev

带有 Android SDK 的 AmazonSQSClientBuilder 和 AWSStaticCredentialsProvider

来自分类Dev

如何从服务到android中的sqlite数据库解析带有JSON对象和JSON数组的JSON数据?

来自分类Dev

截击错误 org.json.JSONException: 没有价值

来自分类Dev

我怎样才能有一系列带有进度条更新的截击请求

来自分类Dev

带有HTTP POST的Android JSON ajaxQuery

来自分类Dev

带有GSON的Android嵌套JSON

来自分类Dev

Android-带有JSON的HttpDelete

来自分类Dev

带有multipartEntity的Android Json解析

来自分类Dev

[Android]-带有HttpUrlConnection的POST Json

来自分类Dev

带有json_encode和html的JSON.parse

来自分类Dev

带有多行和“ android:ellipsize =中间”的Android TextView

来自分类Dev

Android Volley如何在正文中同时发送带有身份验证标头和Json对象的请求

来自分类Dev

将带有NaN的Json读入Python和Pandas

来自分类Dev

带有Http AKKA和案例类的JSON响应

来自分类Dev

iOS:存储带有数组和对象嵌套的json

Related 相关文章

  1. 1

    截击不发送带有参数的发布请求。

  2. 2

    带有 json 处理和快速 Android 网络的 POST

  3. 3

    带有PHP Slim和AngularJS的JSON

  4. 4

    带有JSON和XML的Spring REST

  5. 5

    带有JSON和Java的Yahoo Weather

  6. 6

    带有 C# 和 Mono 的 Json

  7. 7

    Android通知使用GCM和带有JSON消息的Java将其推送为空

  8. 8

    带有selection和selectionArgs []的Android CursorLoader

  9. 9

    带有Android和Google地图的TileOverlay

  10. 10

    带有PageTransformer和SceneTransition的Android ViewPager

  11. 11

    Android:带有RippleEffect和StateListAnimator的<include>

  12. 12

    带有selection和selectionArgs []的Android CursorLoader

  13. 13

    Android:带有AlarmManager和Service的AsyncTask

  14. 14

    带有Android和Google地图的TileOverlay

  15. 15

    带有 Android SDK 的 AmazonSQSClientBuilder 和 AWSStaticCredentialsProvider

  16. 16

    如何从服务到android中的sqlite数据库解析带有JSON对象和JSON数组的JSON数据?

  17. 17

    截击错误 org.json.JSONException: 没有价值

  18. 18

    我怎样才能有一系列带有进度条更新的截击请求

  19. 19

    带有HTTP POST的Android JSON ajaxQuery

  20. 20

    带有GSON的Android嵌套JSON

  21. 21

    Android-带有JSON的HttpDelete

  22. 22

    带有multipartEntity的Android Json解析

  23. 23

    [Android]-带有HttpUrlConnection的POST Json

  24. 24

    带有json_encode和html的JSON.parse

  25. 25

    带有多行和“ android:ellipsize =中间”的Android TextView

  26. 26

    Android Volley如何在正文中同时发送带有身份验证标头和Json对象的请求

  27. 27

    将带有NaN的Json读入Python和Pandas

  28. 28

    带有Http AKKA和案例类的JSON响应

  29. 29

    iOS:存储带有数组和对象嵌套的json

热门标签

归档