Page 504 - 3-3
P. 504

// doInBackground() CallBack 이 return 한 값을 인자로 전달 받음
                 @Override
                    protected void onPostExecute(String result) {
                        super.onPostExecute(result);


                        //  전달받은 값이 null    일 경우 Toast    메시지를 통해 에러 출력
                        //  전달받은 값이 null    이 아닐 경우 화면에 Log         정보 출력
                        if (result == null) {
                            Toast.makeText(ElevatorLogActivity.this, " 층 정보 로딩 실패.",
            Toast.LENGTH_SHORT).show();
                        } else {
                            showResult(result);
                        }
                    }
                }


                private void showResult(String jsonString) {
                    try {
                        ArrayList<HashMap<String, String>> arrayList = new ArrayList<>();
                        JSONObject jsonObject = new JSONObject(jsonString);
                        JSONArray jsonArray = jsonObject.getJSONArray(TAG_JSON);


                        // Json 으로부터 Parsing   한 Log 의 개수만큼 반복문을 실행하며 ArrayList             에 Log  정보를
            추가.
                        for (int i = 0; i < jsonArray.length(); i++) {
                            JSONObject item = jsonArray.getJSONObject(i);
                            String number = item.getString(TAG_NUMBER);
                            String event = item.getString(TAG_EVENT);
                            String date = item.getString(TAG_DATE);


                            HashMap<String, String> hashMap = new HashMap<>();
                            hashMap.put(TAG_NUMBER, number);
                            hashMap.put(TAG_EVENT, event);
                            hashMap.put(TAG_DATE, date);
                            arrayList.add(hashMap);
                        }


                        ListAdapter adapter = new SimpleAdapter(
                                ElevatorLogActivity.this, arrayList, R.layout.elevator_itemlist,
                                new String[]{TAG_NUMBER, TAG_EVENT, TAG_DATE},
                                new int[]{R.id.itemNumber, R.id.itemEvent, R.id.itemDate}
                        );
                        listLog.setAdapter(adapter);
                    } catch (JSONException e) {


                                                        - 504 -
   499   500   501   502   503   504   505   506   507   508   509