null-Zeiger-Ausnahme auf calling interface implementierte Methode in einer anderen Klasse

Ich versuche, rufen Sie die Methode getFailureDialog() von der Schnittstelle OnSelectedListener.
Die Methode ist implementiert in MainActivity.java. Aber wenn ich die Methode aufrufen kann, bin ich immer
die null-Zeiger-Ausnahme.

Ich weiß, dass es ist, weil OnSelectedListener ist noch nicht initialisiert und Sie sind dem Aufruf getFailureDialog() auf nicht initialisierte Objekt. Offensichtlich, interface-Methoden sind nie initialisiert. Aber wie rufe ich die Methode getFailureDialog() aus meiner Klasse Common.java?

Ich bin dabei nur der relevante Quellcode unten-

Source code:

SharedFragment.java

public class SharedFragment extends DialogFragment 
{       
    Bundle bundle = getArguments();
    final String email = bundle.getString("email");

    Thread t=new Thread(new Runnable() 
    {
        public void run() {
        common.myRecord(email);
    }
    });   t.start(); 
}

Common.java

public class Common
{
OnSelectedListener mCallback;


    public interface OnSelectedListener 
    {
        public void getFailureDialog();
    }

    public void myRecord(String email)
    {
        mCallback.getFailureDialog();  //null pointer exception here
    }
}

MainActivity.java

public class MainActivity implements Common.OnSelectedListener
{

@Override
    public void getFailureDialog()
    {

        RecordFailure fd = new RecordFailure(); 
        fd.show(getSupportFragmentManager(), "dialog");
    }
}

Fehlerprotokoll

03-22 15:50:39.032: W/dalvikvm(20796): threadid=16: thread exiting with uncaught exception (group=0x4204c450)
03-22 15:50:39.052: E/AndroidRuntime(20796): FATAL EXCEPTION: Thread-30126
03-22 15:50:39.052: E/AndroidRuntime(20796): java.lang.NullPointerException
03-22 15:50:39.052: E/AndroidRuntime(20796):    at com.cornmail.util.Common.myRecord(Common.java:2062)

InformationsquelleAutor My God | 2013-03-22

Schreibe einen Kommentar