2016-10-15 3 views
-2

Meine App stürzte beim Versuch, RegisterApi und LoginApi-Klassen aufzurufen, ab.ClassCastException: MainActivity kann nicht in die Schnittstelle umgewandelt werden (NetworkCallback)

btnDismiss.setOnClickListener(new Button.OnClickListener(){ 

     @Override 
     public void onClick(View v) { 
      Boolean isVerify = verify(); 
      if (isVerify == true) { 
       checkConn(); 
       if ((isInternetPresent)) { 
        if (status == 1) { 
         if (rb_01.isChecked()) { 
          RegisterApi api=new RegisterApi(context,(NetworkCallback) context); 
          api.processRegister("android","12345",et_name.getText().toString(), 
            et_email.getText().toString(),et_mob.getText().toString(),et_pass.getText().toString()); 
          Utility.HideSoftKeyboard(activity); 
         } else { 
          showBlueAlert("Please accept the Terms And Conditions"); 
         } 

        } else if (status == 0) { 
         LoginApi api=new LoginApi(context, (NetworkCallback) context); 
         api.processLogin("android","12345",et_email.getText().toString(),et_pass.getText().toString()); 
         Utility.HideSoftKeyboard(activity); 
        } 
       } 
      } 
     }}); 

Logcat

10-15 12: 47: 32.762 bis 32.762 23,433/com.shopping.faantush D/Android Runtime: Ausschalten VM Dezember 10-15: 47: 23,436 32762 -32762/com.shopping.faantush E/AndroidRuntime: FATALE AUSNAHME: Haupt Prozess: com.shopping.faantush, PID: 32762 java.lang.ClassCastException: com.shopping.faantush.MainActivity kann nicht in com.shopping umgewandelt werden. faantush.callback.NetworkCallback com.shopping.faantush.slidingmenuactivity.LoginPopUp $ 5.onClick (LoginPopUp.java:250) bei android.view.View.performClick (View.java:5280) bei android.view.View $ PerformClick.run (View. java: 21239) bei android.os.Handler.handleCallback (Handler.java:739) bei android.os.Handler.dispatchMessage (Handler.java:95) bei android.os.Looper.loop (Looper.java: 234) bei android.app.ActivityThread.main (ActivityThread.java:5526) bei java.lang.reflect.Method.invoke (native Methode) bei com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit .java: 726) bei com.android.internal.os.ZygoteInit.main (ZygoteInit.java:616)

mir bitte helfen, dieses Problem zu lösen ... Danke ..

+0

Sie die Grundlagen vermissen, denke ich. Wie würdest du einen Apfel in eine Banane verwandeln? –

Antwort

0

Sie sollten NetworkCallback in MainActivity implementieren oder Referenz als anonyme Klasse übergeben.

Pass Referenz als anonyme Klasse

RegisterApi api=new RegisterApi(context,new NetworkCallback(){ 

//override your callback methods here 

}); 

Das Gleiche gilt für Anmeldung API

LoginApi api=new LoginApi(context, new NetworkCallback(){ 

//override your callback methods here 

}); 
+0

Vielen Dank ... anonyme Klasse funktioniert für mich .. :) – anu208

Verwandte Themen