2017-06-30 3 views
1

In diesem JsonResponseKann nicht Symbol 'aus'

private void handleReserveResponse (final String res) { 

     if (res != null){ 

      try { 

       JSONObject objResponce = new JSONObject(res); 
       String success = objResponce.getString("success"); 
       if (success.equals("true")) { 

        JSONArray arrdata = objResponce.getJSONArray("disponibilidad"); 
        for (int i = 0; i < arrdata.length(); i++) { 

         JSONObject objdata = arrdata.getJSONObject(i); 
         String listDatesA = objdata.getString("slot_date"); 

         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); 

         dateA = format.parse(listDatesA); 

         calendar = Calendar.getInstance(); 
         calendar.setTime(dateA); 

         CalendarDay calendarDay = new CalendarDay.from(calendar); 
        } 
       } 

      } catch (Exception e) { 
       e.printStackTrace(); 
      } 

     }else { 
       DialogAlert.show_alert_dialog(getActivity(), getResources().getString(R.string.result_null_msg)); 
      } 

    } 

ich mag anderes Datum lösen sie in String listDatesA zu speichern und sie CalendarDay calendarDay = new CalendarDay.from(calendar); zu Date

Aber in der conversion

.from ist in rot gesetzt und zeigt den Fehler Cannot resolve symbol 'from'

In einem anderen ihr Projekt hat diesen Code untersucht und hatte diesen Fehler nicht. Ich versuche Datei-> Fänge/Restar ungültig zu machen, aber nicht funktionieren. Wie kann ich sie lösen bitte

+1

'neue CalendarDay.from' ist nicht gültig Java. Meintest du nur 'CalendayDay.from'? –

+1

Es ist eine statische Methode, so dass Sie es nicht von einem Objekt, sondern von der Klasse aus aufrufen können. Probieren Sie: 'CalendarDay calendarDay = CalendarDay.from (Kalender);' (entfernen Sie 'new'). Siehe [die Dokumentation hier] (https://prolificinteractive.github.io/material-calendarview/com/prolificinteractive/materialcalendarview/CalendarDay.html). – AntonH

+0

Wenn Sie eine Methode aus einem neuen Objekt aufrufen möchten, würden Sie das folgendermaßen tun: 'int foo = new ArrayList <>(). GetSize();' Sie können die Methode direkt nach der Methode aufrufen Konstruktor, vorausgesetzt, Sie haben nichts dagegen, dass das Objekt nirgendwo anders referenziert wird, oder wenn Sie einen Builder verwenden, der sich bei verketteten Methodenaufrufen selbst zurückgibt. – Compass

Antwort

0

ändern diese:

CalendarDay calendarDay = new CalendarDay.from(calendar); 

dazu:

CalendarDay calendarDay = CalendarDay.from(calendar); 
+0

Bitte denken Sie daran, Ihrer Antwort weitere Erklärungen/Einblicke hinzuzufügen, da dies bereits in den Kommentaren behandelt wurde. – QBrute