2017-01-27 5 views
-4

I Layout Aktivität ersetzt werden soll mit einem Fragment onItemClickListener in einer Liste mitandroid Fragment-Aktivität unter Verwendung

@Override 
public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
    switch (position) { 
     case 0: 
      intent = new Intent(this, Answer.class); 
      startActivity(intent); 
      Answer_0 answer_0=new Answer_0(); 
      android.app.FragmentManager fragmentManager=getFragmentManager(); 
      android.app.FragmentTransaction fragmentTransaction=fragmentManager.beginTransaction(); 
      fragmentTransaction.replace(R.id.fragment_show,answer_0); 
      fragmentTransaction.commit(); 
      break; 

Wenn ich auf Element klicken, dann zeigt app ANR und schaltet ab.

+0

Was ist der Fehler? – AbhayBohra

+2

Welchen Sinn hat das Ersetzen von Fragment nach StartActivity? – Selvin

+0

Ich verwende eine ListView in Aktivität und mit einem OnItemClickListener und wollte das Layout der gestarteten Aktivität mit Fragment-Layout ändern –

Antwort

0

diese Funktion zu Ihrer Aktivität hinzufügen

public void openFragment(Fragment fragment) { 

      android.support.v4.app.FragmentManager fragmentManager = getSupportFragmentManager(); 
      fragmentManager.beginTransaction().replace(R.id.container, fragment).commit(); 

     } 

und verwenden ähnliche

@Override 
public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
    switch (position) { 
     case 0: 
      openFragment(new yourFragment1()); 
      break; 

      case 1: 
      openFragment(new yourFragment2()); 
      break; 

      case 2: 
      openFragment(new yourFragment3()); 
      break; 
     } 

und stellen Sie sicher, dass Sie android.support.v4 statt android.app

Und machen Sie es importieren, nachdem Sie Ihre Aktivität öffnen

Und wenn Sie l oad Fragment, wenn die Aktivität startet dann setzen openFragment(new yourFragment()) auf onCreate Methode dieser Aktivität

+0

nicht gelöst das gleiche Problem –

+0

Welches Problem bekommen Sie? Was ist der Fehler? – AbhayBohra

+0

Ich mache eine App, die Fragmente haben. Die App hat nur zwei Aktivitäten, die für Fragen in listview mit onItemClickListener und eine andere für die Antwort angeordnet ist. Jede Antwort ist in einem entsprechenden Fragment angeordnet. Wenn ich auf ein Element der Listenansicht klicken Sie dann antworten Aktivität dann will ich das Layout der Antwort-Aktivität mit dem geklickten Artikel des entsprechenden Fragments Projekt-Dateien ersetzen, wie folgt ..... QuestionActivity.java AnswerActivity.java questions_layout .xml answer_layout.xml und 40 Fragmente bitte helfen –

Verwandte Themen