2016-04-07 13 views
0

Burada ne oluyor, iletişim nesnesi başlatıldığında, boş nesneyi gösterir. Ayrıca JSON verilerini kontrol ettim ve onaylıyor, bu yüzden metin kullanıma hazır hale gelene kadar çalışıyor. PLS İşte Kişi nesnesini iliştirmeye çalışırken iletişim nesnesindeki boş işaretçi istisnası

istisna

Process: com.compscitutorials.basigarcia.navigationdrawervideotutorial, PID: 9369 
java.lang.RuntimeException: Unable to start activity  
ComponentInfo{com.compscitutorials.basigarcia.navigationdrawervideotutorial/mini_project_3.ama.TeacherHome}: java.lang.NullPointerException: Attempt to invoke virtual method 'void 
mini_project_3.ama.CustomListAdapter.add(mini_project_3.ama.contacts)' on a null object reference 
                              at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416) 
                              at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) 
                              at android.app.ActivityThread.-wrap11(ActivityThread.java) 
                              at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344) 
                              at android.os.Handler.dispatchMessage(Handler.java:102) 
                              at android.os.Looper.loop(Looper.java:148) 
                              at android.app.ActivityThread.main(ActivityThread.java:5417) 
                              at java.lang.reflect.Method.invoke(Native Method) 
                              at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
                              at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
                              Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void mini_project_3.ama.CustomListAdapter.add(mini_project_3.ama.contacts)' on a null object reference 
                              at mini_project_3.ama.MarkAttendance.onCreateView(MarkAttendance.java:69) 
                              at android.support.v4.app.Fragment.performCreateView(Fragment.java:1962) 
                              at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1067) 
                              at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1248) 
                              at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:738) 
                              at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1613) 
                              at android.support.v4.app.FragmentController.execPendingActions(FragmentController.java:330) 
                              at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:547) 
                              at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1237) 
                              at android.app.Activity.performStart(Activity.java:6253) 
                              at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2379) 
                              at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)  
                              at android.app.ActivityThread.-wrap11(ActivityThread.java)  
                              at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)  
                              at android.os.Handler.dispatchMessage(Handler.java:102)  
                              at android.os.Looper.loop(Looper.java:148)  
                              at android.app.ActivityThread.main(ActivityThread.java:5417)  
                              at java.lang.reflect.Method.invoke(Native Method)  
                              at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)  
                              at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)  

MarkAttendance.java log edilir YARDIM

package mini_project_3.ama; 


import android.content.Context; 
import android.os.Bundle; 
import android.support.annotation.Nullable; 
import android.support.v4.app.Fragment; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.AdapterView; 
import android.widget.ListView; 
import android.widget.Toast; 

import org.json.JSONArray; 
import org.json.JSONException; 
import org.json.JSONObject; 

import java.text.SimpleDateFormat; 
import java.util.Calendar; 


/** 
* A simple {@link Fragment} subclass. 
*/ 
    public class MarkAttendance extends Fragment { 


ListView list; 
String data; 
CustomListAdapter ca; 
JSONArray ja; 
JSONObject jo; 
contacts c; 
@Nullable 
@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 

    View v = inflater.inflate(R.layout.mark_attendance, container, false); 
    Context context = getContext(); 
    CustomListAdapter adapter = new  CustomListAdapter(getActivity(),R.layout.malist); 
    list = (ListView) v.findViewById(R.id.listview_custom); 
    list.setAdapter(adapter); 
    data = getArguments().getString("data"); 

    Calendar cal = Calendar.getInstance(); 
    SimpleDateFormat s = new SimpleDateFormat("dd/MM/yyyy"); 
    String d = s.format(cal.getTime()); 

    //Toast.makeText(getActivity(),""+data,Toast.LENGTH_LONG).show(); 
    try { 
     jo=new JSONObject(data); 
     ja=jo.getJSONArray("server_response"); 

     int count=0; 
     String lecno,lectype,subcode,batchid; 

     while(count<ja.length()) 
     { 
      JSONObject jo1=ja.getJSONObject(count); 
      lecno=jo1.getString("lec_no"); 
      lectype=jo1.getString("lec_type"); 
      subcode=jo1.getString("sub_code"); 
      batchid=jo1.getString("batch_id"); 
      Toast.makeText(getActivity(),""+d+lecno+lectype+subcode+batchid,Toast.LENGTH_LONG).show(); 

      c = new contacts(d,lecno,lectype,subcode,batchid); 

      ca.add(c); 
      count++; 

     } 

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

    list.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
     @Override 
     public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 

      String bid= ca.getListBatch(position); 
      String method="getrno"; 

      Toast.makeText(getActivity(),""+bid,Toast.LENGTH_LONG).show(); 


     } 
    }); 

    return v; 
    } 
} 
+0

da mark_attendance.xml paylaşın değiştirmeye çalışın! – bendaf

cevap

0

Eğer CustomListAdapter ca; ilan ettiler ve bu değişken örneği asla alınmış gibi görünüyor, ama eklemeye çalıştığınız Bunun için ca.add(c); değerini kullanın.

ca.add(c); 

için

adapter.add(c); 
İlgili konular