/ / Ersetzen Sie das aktuelle Fragment durch ein neues androides androides Fragment

Ersetzen Sie das aktuelle Fragment durch neue androide android-Fragmente

In meiner App muss ich zwischen Fragmenten wechseln, wenn auf verschiedene Elemente in der Navigationsleiste geklickt wird. Ich habe eine neue Methode DisplayFragment dafür erstellt. Hier ist der Code:

private void DisplayFragment(int position)
{
Fragment fragment = null;
switch (position){

case 0:
fragment = new Fragment1();
break;

case 1:
fragment = new Fragment2();
break;

case 2:
fragment = new Fragment3();
break;

case 3:
fragment = new Fragment4();
break;

if(fragment!= null)
this.getFragmentManager().beginTransaction().replace(R.id.frame_container,fragment()).commit();

}

es zeigt einen Fehler für "fragment element in der obigen Zeile wie folgt" falscher zweiter Argumenttyp gefunden android.support.v4.app.Fragment; erforderliches android.app.Fragment; "

Ich habe versucht, den Import von android.support.v4.app.Fragment zu android.app.Fragment zu ändern; aber es zeigt dann einen Fehler für Fragment fragment = null-Anweisung. Was mache ich falsch?

Antworten:

0 für die Antwort № 1

Sie müssen den Support-Fragment-Manager verwenden android.support.v4.app.Fragment.

this.getSupportFragmentManager().beginTransaction().replace(R.id.frame_container, fragment).commit();

damit, getSupportFragmentManager() Anstatt von getFragmentManager(). Außerdem müssen Sie nicht verwenden this in diesem Fall.