2016-11-07 2 views
0

Ich habe zwei leere Aktivitäten, die zwei Fragmente enthält. Eine Aktivität ist mit Adapter und es fungiert als Tabactivity mit Adapter innerhalb.Übergeben von Daten zwischen Fragmenten mit Bundle-Objekt

Ich möchte Daten mit Absicht weitergeben und innerhalb bündeln. Wenn Benutzer E-Mail in Aktivität 1 ein und drücken Sie Enter-Taste, E-Mail auf Textview innerhalb Aktivität 2.

Hier erscheinen wird ist Ausnahme, die ich erhalten:

java.lang.NullPointerException: Attempt to invoke virtual method 'void com.presenter.utils.ui.AutoResizeTextView.setText(java.lang.CharSequence)' on a null object reference 
                  at com.presenter.view.fragment.ForgotPasswordFragmentComplete.onCreate(ForgotPasswordFragmentComplete.java:50) 
                  at android.support.v4.app.Fragment.performCreate(Fragment.java:2075) 

I Intent und Bündel erstellt haben:

@Bind(R.id.btn_forgot) 
    AppCompatButton btn_forgot; 
    @Bind(R.id.forgot_edittext) 
    AppCompatEditText editEmail; 

public void onButtonClick() { 
    Intent intent = new Intent(".presenter.view.activity.ForgotPasswordCompleted"); 

    intent.putExtra("email", editEmail.getText().toString()); 


    ForgotPasswordFragment fragment = new ForgotPasswordFragment(); 
    Bundle bundle = new Bundle(); 
    bundle.putString("email",editEmail.getText().toString()); 
    fragment.setArguments(bundle); 

startActivity (Absicht); }

Manifest:

<activity android:name=".presenter.view.activity.ForgotPasswordCompleted" 
    android:label="Forgot" 
    android:launchMode="singleTask" 
    android:screenOrientation="portrait" 
    android:windowSoftInputMode="adjustResize"> 

<intent-filter> 
    <action android:name=".presenter.view.activity.ForgotPasswordCompleted"/> 
    <category android:name="android.intent.category.DEFAULT"/> 
</intent-filter> 

Ich habe mit Dolch binded Textview, hinzugefügt String getName und umgesetzt Absicht und bündeln in Fragment 2:

@Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 



    Intent intent = getActivity().getIntent(); 
     Bundle bd = intent.getExtras(); 
     if ((bd != null)){ 
      String getName = (String) bd.get("email"); 
      resentTxt.setText(getName); 
     } 
+0

Sie haben nichts mit weder Absicht noch Fragment erstellt in onButtonClick – Selvin

+0

Ich habe alles versucht, was soll ich mit ihnen tun? @Selvin –

Antwort

0

Sie haben vergessen, diese Zeile

zu schreiben
InjectorClass.inject(this); 

in onCreate.

+0

Danke, ich werde es tun .. Denken Sie, dass die Injektion Problem macht? @Harish Gyanani –

+0

Ja, Sie erhalten NullPointerException, da AutoResizeTextView null ist. –

+0

Ich kann das aus der Ausnahme sehen, aber denken Sie, es ist ein Problem mit der Injektion von Klasse in Fragment 2? –

Verwandte Themen