web-dev-qa-db-fra.com

Changer l'activité de démarrage de l'application

J'ai créé la viande et les tripes de mon application, mais je souhaite ajouter une activité différente qui sera le point de départ (sorte d'écran de connexion).

Questions de couple:

  • 1 J'ai une bonne idée de la manière de basculer entre les activités (basé sur cet article: http://www.linux-mag.com/id/7498 ) mais je ne suis pas sûr comment en créer un nouveau (avec Eclipse) .

  • 2 Une fois la nouvelle activité créée , comment puis-je la définir comme activité par défaut de mon application? Je suppose que je pourrais simplement changer le nom du classes ... mais existe-t-il un moyen plus élégant de gérer cela (peut-être dans le AndroidManifest.xml)?

353
Kyle

Oui, vous utilisez le fichier AndroidManifest.xml. Vous pouvez même avoir plusieurs activités de lanceur spécifiées dans votre manifeste d'application. Pour faire une activité visible sur le lanceur, vous ajoutez ces attributs à votre activité dans le manifeste:

<intent-filter>
    <action Android:name="Android.intent.action.MAIN" />
    <category Android:name="Android.intent.category.LAUNCHER" />
</intent-filter>
605
schwiz

Accédez au fichier AndroidManifest.xml situé dans le dossier racine de votre projet et modifiez le nom de l'activité que vous souhaitez exécuter en premier.

Exemple:

<activity Android:name=".put your started activity name here"
          Android:label="@string/app_name">
    <intent-filter>
        <action Android:name="Android.intent.action.MAIN" />
        <category Android:name="Android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>
83
neeraj t

Si vous utilisez Android Studio et que vous avez peut-être déjà sélectionné ne autre activité à lancer.

Cliquez sur Run > Edit configuration puis assurez-vous que Lancer l'activité par défaut est sélectionné.

Launch default Activity

44
Zeezer
 <application
    Android:icon="@drawable/YOUR_ICON"    <!-- THIS ICON(IMAGE) WILL BE SHOWN IN YOUR APPS -->
    Android:label="MY APP NAME " >    <!-- HERE LABEL(APP NAME) -->
    <activity
        Android:name=".application's starting activity"  <!-- (.)dot means current dir, if your activity is in another package then give full package name ex: com.xxx.Activity  -->
        Android:label="LABEL FOR ACTIVITY "
        Android:screenOrientation="portrait" >
        <intent-filter>
            <action Android:name="Android.intent.action.MAIN" />

            <category Android:name="Android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
28
LMK

Suivez les instructions ci-dessous:

1 :) Ouvrez votre fichier AndroidManifest.xml.

2 :) Allez au code d'activité que vous voulez faire de votre activité principale comme ci-dessous.

comme je veux faire de SplashScreen comme activité principale

<activity
    Android:name=".SplashScreen"
    Android:screenOrientation="sensorPortrait"
    Android:label="City Retails">
</activity>

3 :) Maintenant, copiez le code ci-dessous entre les balises d'activité de la même manière que:

<activity
    Android:name=".SplashScreen"
    Android:screenOrientation="sensorPortrait"
    Android:label="City Retails">
    <intent-filter>
        <action Android:name="Android.intent.action.MAIN" />
        <category Android:name="Android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

et vérifiez également que les lignes nouvellement ajoutées ne sont pas attachées avec d'autres balises d'activité.

17
Bhunnu Baba

Ceci est facile à corriger.

  • Les modifications apportées à l'activité du programme de lancement sont également stockées dans le fichier configuration de débogage.
  • Allez à Run > Debug Configurations et modifiez le réglage.
  • Il existe également un paramètre similaire dans Intellij sous Run > Edit Configurations select Exécuter l'activité par défaut et le paramètre ne sera plus enregistré de cette façon.
15
user3154790

C'est simple. Faites cela dans votre fichier Manifest.

<activity
    Android:name="Your app name"
    Android:label="@string/app_name">
        <intent-filter>
            <action Android:name="Android.intent.action.MAIN" />
            <category Android:name="Android.intent.category.HOME" />
            <category Android:name="Android.intent.category.DEFAULT" />
        </intent-filter>
</activity>
14
user1950448

Il suffit d'aller dans votre fichier AndroidManifest.xml et d'ajouter comme ci-dessous

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

puis enregistrez et exécutez votre projet Android.

4
user3206168
 <activity Android:name=".MainActivity">
            <intent-filter>
                <action Android:name="Android.intent.action.MAIN" />
                <category Android:name="Android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
3

Vous ajoutez ceci et vous souhaitez lancer l'activité Android:exported="true" dans un fichier manifeste comme

 <activity
      Android:name=".activities.activity.MainActivity"
      Android:windowSoftInputMode="adjustPan"
      Android:exported="true"/>
  <activity

Ouvrez le fichier Java de cette activité, faites un clic droit, puis cliquez sur "Exécuter l'activité principale".

OR

Ouvrez le fichier Java de cette activité et appuyez sur Ctrl+Shift+F10.

1
Prabh deep