29 votes

FragmentActivity ne peut pas être résolu en un type

Je suis de départ de l'apprentissage pour tablette android programmation et je suis en mesure de mettre à jour mon Eclipse ainsi que tous les nouveaux sdk pour android. J'ai commencer à tester l'application de ce blog , tout à l'extension de l'FragmentActivity obtenez cette erreur, j'ai google, mais pas de trouver une solution. Mon projet a été créé avec la version 3.0 version 11, tous les autres paquets sont utilisés avec succès dans le code, mais seulement ce FragmentActivity n'a pas été en mesure de résoudre.

Ai-je raté une bibliothèque ou quelque chose?

Mon code

public class Testing_newActivity extends FragmentActivity { // here the FragmentActivity getting error package not found for import
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //setContentView(R.layout.main);
        if (getResources().getConfiguration().orientation
                == Configuration.ORIENTATION_LANDSCAPE) {
            // If the screen is now in landscape mode, we can show the
            // dialog in-line so we don't need this activity.
            finish();
            return;
        }

        if (savedInstanceState == null) {
            // During initial setup, plug in the details fragment.
            DetailsFragment details = new DetailsFragment();
            details.setArguments(getIntent().getExtras());

            getSupportFragmentManager().beginTransaction().add(
                    android.R.id.content, details).commit();
        }       
    }
}

android fichier manifest

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.searce.testingnew"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk android:minSdkVersion="11" />

    <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" >
        <activity android:label="@string/app_name" android:name=".Testing_newActivity" >
            <intent-filter >
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

45voto

Pratik Points 15125

Après une longue période pour cette réponse j'ai trié, mais je pense que beaucoup de gens ont besoin de solution simple à cette question.

This solution for eclipse user who have using Indigo or lower version. Still finding for another user who have not use the eclipse and used another editor for android.

Ok, donc quand vous l'extension de l' FragmentActivity pour votre application avec la version 2.2 ou toute version basse qui ne supporte pas le Fragment de pour que. Vous pouvez télécharger le android.supportv4.jar à partir d' ici, ou vous pouvez obtenir ce à partir de votre android-sdk répertoire ..\android-sdk\extras\android\support\v4 et le mettre dans votre projet.

Si il n'y a pas de répertoire libs dans votre projet, créer répertoire libs et collez le android.supportv4.jar fichier dans ce répertoire.

Désormais, à partir d'eclipse espace de travail de projet. Sélectionnez votre project/application dans lequel vous souhaitez utiliser. Clic droit sur l' Project et sélectionnez Properties option. Dans cette Java build path et sélectionnez l'onglet Libraries

enter image description here

Maintenant, cliquez sur Add Jar il affichera la liste actuelle des projets sélectionnés projet en cours. Maintenant d'élargir et d'aller vers le répertoire libs et sélectionnez android.supportv4.jar fichier, puis cliquez sur ok. Il va s'afficher dans la zone de liste maintenant. Remember add the jar file as relative path path not as absolute path, so whenever if you change the directory of your project or open in another machine then will detect automatically for the project directory. Maintenant, cliquez sur Ok pour fermer la boîte de dialogue Propriétés.

Vous pouvez en mesure d'importer la android.support.v4.app.FragmentActivity; de mettre la souris sur la FragmentActivity ou appuyez sur les touches ctrl+shift+o pour importer des fichiers manquants.

J'espère que vous pourrez a maintenant FragmentActivity classe.

Si vous utilisez eclipse juno alors pas besoin de s'inquiéter pour le téléchargement de l'appui fichier jar. Il sera automatiquement mis dans le répertoire libs et ajouté automatiquement à votre projet chemin. Si dans le cas où elle n'est pas alors passer par l' Properties option et ajouter.

Encore une chose Si vous avez besoin de l'appui de votre demande pour la version la plus basse puis de construire avec la version supérieure et ajouter cette ligne dans votre androidmanifest.xml fichier

<uses-sdk
    android:minSdkVersion="3"
    android:targetSdkVersion="15" />

ce sera désormais en charge de 1.5 à la version 4.0.1 appareils.

38voto

Shivanand Darur Points 738

Si vous utilisez eclipse et windows, voici comment vous pouvez vous débarrasser de cette erreur.

 Right click on your project folder->Build path-> Configure build path-> 
Add External Jars -> select "android-support-v4.jar" file (It'll be located in Android "android-sdk-windows\extras\android\support")
then click OK.
 

5voto

Prashant Points 31

vous devez ajouter le support externe android Jar à votre chemin de classe. Par exemple, dans mon cas, j'ai ajouté android-support-v4.jar, généralement situé dans le répertoire {android_home}\extras\android\support\v4 . J'utilise Windows XP et dans mon cas, il se situe à C:\Program Files\Android\android-sdk\extras\android\support\v4

J'espère que cela aide à quiconque cherche une réponse.

1voto

Rajdeep Dua Points 7911

FragmentActivity fait partie de la bibliothèque de compatibilité et non d'Android 3.0 sdk. Vous n'avez pas besoin de l'utiliser sauf si vous souhaitez une compatibilité descendante.

Je ne sais pas pourquoi cela est mentionné ici peut être une classe spécifique au projet.

Essayez de regarder HCGallery Sample livré avec le sdk

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X