web-dev-qa-db-ja.com

アプリケーションの起動アクティビティを変更する

アプリケーションの中身を作成し​​ましたが、出発点となる別のアクティビティを追加したいと思います(一種のログイン画面)。

カップルの質問:

  • 1私はアクティビティを切り替える方法についてかなりまともな扱いをしています(この記事に基づく: http://www.linux-mag.com/id/7498 )、わからない Eclipseを使って新しいものを作成する方法

  • 2新しいアクティビティを作成したら、 それをアプリケーションのデフォルトアクティビティとして設定するにはどうすればよいですか。 クラスの名前を変更することができると思いますが…それを処理するためのもっとエレガントな方法はありますか(おそらくAndroidManifest.xmlの中で)?

341
Kyle

はい、あなたはAndroidManifest.xmlファイルを使用します。実際には、アプリケーションマニフェストで複数のランチャーアクティビティを指定することもできます。ランチャーにアクティビティを表示するには、マニフェストのアクティビティにこれらの属性を追加します。

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

プロジェクトのルートフォルダにあるAndroidManifest.xmlに移動し、最初に実行するアクティビティの名前を変更します。

例:

<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>
80
neeraj t

Android Studioを使用していて、以前に 別のアクティビティ を起動するように選択した可能性があります。

Run > Edit configurationをクリックして、 デフォルトのアクティビティを起動 が選択されていることを確認します。

Launch default Activity

42
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>
27
LMK

以下の指示に従ってください:

1 :) AndroidManifest.xmlファイルを開きます。

2 :)あなたが以下のようにあなたの主な活動をしたいと思う活動コードに行きなさい。

SplashScreenを主な活動にしたいなど

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

3 :)次に、アクティビティタグの間に次のコードをコピーします。

<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>

また、新しく追加された行が他のアクティビティタグと関連付けられていないことも確認します。

16
Bhunnu Baba

これは修正が簡単です。

  • Launcherアクティビティへの変更は デバッグ設定 にも保存されます。
  • Run > Debug Configurationsに行き、設定を編集してください。
  • Intellij Run > Edit Configurations select Run default Activity にも同様の設定があり、この方法で設定を保存することはできません。
15
user3154790

それは簡単です。 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

AndroidManifest.xmlファイルに移動して、以下のように追加するだけです。

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

その後、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>

これを追加して、マニフェストファイルのアクティビティAndroid:exported="true"を起動します。

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

このアクティビティのJavaファイルを開き、右クリックしてから[Run main main Activity]をクリックします。

OR

この活動のJavaファイルを開いて押す Ctrl+Shift+F10

1
Prabh deep