Ich bin ziemlich neu in Android Apps, also hoffe ich, dass ich hier Hilfe finde. Ich habe hier schon nach meinem Problem gesucht und etwas gefunden, aber das funktioniert nicht.
Ich möchte ein Fragment zu einem FrameLayout hinzufügen, aber es funktioniert nicht. Mein Ziel ist es, ein Frame (/ Framework?) Zu erstellen, das immer vorhanden ist und mit dem der Benutzer interagieren kann. Innerhalb dieses Frame in einem bestimmten "Fenster" möchte ich insgesamt fünf Seiten / Fragmente anzeigen und wechseln können Die Seiten / Fragmente können jederzeit, also habe ich einen immer vorhandenen Frame und darin dynamisch wechselnde Seiten. Aber im Moment stecke ich ganz am Anfang mit dem Hinzufügen eines einfachen Fragments zu diesem Frame (der bereits funktioniert.)
Das ist der relevante Code, den ich hoffe: Der Fehler tritt in der MainActivity.java auf (getSupportFragmentManager (). BeginTransaction (). Add (R.id.mainFrame, homeFragment) .commit ();) wo es mir sagt:
Fehler: (25, 55) error: keine geeignete Methode gefunden für add (int, HomeFragment) Methode FragmentTransaction.add (Fragment, String) ist nicht anwendbar (Argument stimmt nicht überein; int kann nicht in konvertiert werden Fragment) -Methode FragmentTransaction.add (int, Fragment) ist nicht anwendbar (Argument nicht übereinstimmend; HomeFragment kann nicht in konvertiert werden Fragment)
Ich habe bereits versucht, fragment nach homeFragment zu übertragen, aber das hat nicht funktioniert.
MainActivity.java
%Vor%activity_main.xml
%Vor%fragment_home.xml
%Vor%HomeFragment.java (alles ist noch automatisch generiert, aber ich habe schon etwas abgeschnitten)
%Vor%Kann mir bitte jemand helfen?
John
Sie vermischen Klassen aus der Support-Bibliothek und die neuen Klassen, die nur für neuere Versionen des Betriebssystems verfügbar sind.
Sie importieren beispielsweise android.app.FragmentTransaction
(verfügbar für API 11+), aber der Aufruf von getSupportFragmentManager().beginTransaction()
gibt android.support.v4.app.FragmentTransaction
...
Sie müssen android.support.v4.app.FragmentTransaction
importieren und sicherstellen, dass Ihre HomeFragment
% android.support.v4.app.Fragment
und nicht android.app.Fragment
erweitert.
Tags und Links java android android-fragments frame fragment