46 votes

Comment définir mon activité comme activité principale dans Android ?

Je souhaite créer ma propre activité comme activité principale plutôt que d'utiliser par défaut MainActivity .

Comment puis-je définir cela dans le manifeste Android ?

72voto

Nargis Points 2539

Dans votre fichier manifeste , utilisez le code ci-dessous pour déclarer une activité en tant qu'activité de lancement :

 <activity android:name=".yourActivityName" >
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

À partir de la documentation du développeur Android :

Activité ACTION_MAIN : démarre en tant qu'activité initiale d'une tâche, sans entrée de données et sans retour de sortie.

CATEGORY_LAUNCHER : l'activité peut être l'activité initiale d'une tâche et est répertoriée dans le lanceur d'applications de niveau supérieur.

15voto

prabhat Points 253

Dans le fichier AndroidManifest.xml à l'intérieur de la balise d'application, ajoutez une balise d'activité et supprimez l'action MAIN de l'ancienne balise d'activité définie par défaut

  <application...... >
    <activity
        android:name=".DefaultActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.DEFAULT" />
        </intent-filter>
    </activity>
    <activity
        android:name=".NewActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

 </application>

6voto

tugbacevizci Points 51

Vous pouvez utiliser dans le fichier manifeste :

 <activity
    android:name=".DefaultActivity"
    android:label="@string/app_name" >
    <intent-filter>
        <action android:name="android.intent.action.DEFAULT" />
    </intent-filter>
</activity>
<activity
    android:name=".NewActivity"
    android:label="@string/app_name" >
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity> 

Il est très important:

 <intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />
</intent-filter>

1voto

ManuQiao Points 530

Dans Xamarin , vous pouvez ajouter MainLauncher = true au-dessus de la définition de classe comme ceci :

 [Activity(Label = "UserActivity", MainLauncher = true)]
public class UserActivity : ListActivity

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