Ajouter par programme fragment de framelayout dans android

Je suis en train de construire une INTERFACE utilisateur en combinant à la fois statique et dynamique des éléments. Pour cela, j'ai divisé mon activité en fragments - toutes les app de navigation est ensuite effectuée par le remplacement des fragments au lieu de naviguer entre les activités.

Dans mon activité principale la mise en page, je suis à l'aide d'un FrameLayout:

<FrameLayout
        android:id="@+id/mainframe"
        android:layout_height="match_parent"
        android:layout_width="match_parent"
        android:layout_below="@id/topsection"
        android:layout_above="@id/lowersection" />

J'ai un fragment déclarées comme telles:

public class MyFragment extends Fragment {
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
        //Inflate the layout for this fragment
        return inflater.inflate(R.layout.fragmentlayout, container, false);
    }
}

Puis, dans mon activité principale (qui s'étend à FragmentActivity et utilise l'importation android.support.v4.app.FragmentActivity, je suis une tentative de chargement de ce fragment dans le cadre de mise en page.

MyFragment myf = new MyFragment();

FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.add(R.id.mainframe, myf);
transaction.commit();

J'ai suivi de beaucoup d'autres exemples, mais je reçois une erreur de compilation sur la transaction.add() commande, que personne d'autre ne semble avoir rencontré.

L'erreur que je reçois est: The method add(int, Fragment) in the type FragmentTransaction is not applicable for the arguments (int, MyFragment).

Pourquoi est-ce? Le MyFragment classe étend Fragment alors je ai pensé que ce serait le travail. Ce que je fais mal?

Edit: Les importations de mes principales activités sont:

import org.joda.time.DateTime;
import android.app.FragmentTransaction;
import android.database.Cursor;
import android.os.Bundle;
import android.os.Handler;
import android.support.v4.app.FragmentActivity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;
Etendez-vous FragmentActivity dans votre activité principale classe?
parfois, nous ne erreur lors de l'importation de deux même classe à partir de deux endroit différent tout en faisant le raccourci clavier, je vous suggère de vérifier vos classes importées puisque vous n'êtes pas à l'aide de support de la bibliothèque, comme je le pensais auparavant. Néanmoins, il serait utile pour nous de trouver le problème si vous pouvez mettre vos classes importées ici.
mon activité principale ne s'étendent FragmentActivity, pas Activity.
Je suis l'aide de l'importation android.support.v4.app.FragmentActivity. C'est la seule option que eclipse m'a incité à l'importation - est-il différent de celui que je devrais utiliser?
importation FragmentTransaction de bibliothèque de prise en charge d'android.de soutien.v4.app.FragmentTransaction; aussi, puisque vous êtes l'utilisation d'un support de l'usage de la bibliothèque getSupportFragmentManager() au lieu de getFragmentManager()

OriginalL'auteur Mike Baxter | 2013-12-08