私はここで目立ちました。私はログイン活動、スプラッシュ画面の活動と主な活動があります。すでに実行することができますが、最初にログインアクティビティだけを起動してからスプラッシュ画面を表示します主なアクティビティは表示されません。スプラッシュスクリーンにログインしてメインアクティビティにアクセスしてください。
あなたのアドバイスありがとう
これは私のアプリケーションの流れです。ログインアクティビティ>スプラッシュスクリーン>メインアクティビティ
私はここで目立ちました。私はログイン活動、スプラッシュ画面の活動と主な活動があります。すでに実行することができますが、最初にログインアクティビティだけを起動してからスプラッシュ画面を表示します主なアクティビティは表示されません。スプラッシュスクリーンにログインしてメインアクティビティにアクセスしてください。
あなたのアドバイスありがとう
これは私のアプリケーションの流れです。ログインアクティビティ>スプラッシュスクリーン>メインアクティビティ
これは非常に基本的なAndroidです。非常に少なくとも、あなたはマニフェストで宣言する必要があります:
<activity
android:name="com.yourpackage.com.LoginActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.yourpackage.com.SplashActivity"
android:parentActivityName=".LoginActivity">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.yourpackage.com.LoginActivity" />
</activity>
<activity
android:name="com.yourpackage.com.MainActivity"
android:parentActivityName=".SplashActivity">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.yourpackage.com.SplashActivity" />
</activity>
1が立ち上げた活動(ログイン)で、他のものは彼らの親アクティビティを宣言します。それぞれのアクティビティで適切なタイミングで次のアクティビティを開始する必要があります。
// this call happens in LoginActivity
startActivity(new Intent(LoginActivity.this, SplashActivity.class));
// this call happens in SplashActivity
startActivity(new Intent(SplashActivity.this, MainActivity.class));
これはすべて必要です。注:スプラッシュ画面の方が優れていますが、これで十分です。それが役に立てば幸い。
マニフェストで正しくアクティビティを宣言しましたか?それはそうでなければなりません。
<activity android:name=".SplashActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".LoginActivity" />
<activity android:name=".MainActivity" />
SplashActivity
あなたはそれがMainActivity
かLoginActivity
にジャンプする前に、かどうかloginedユーザーに依存してあなたのapp.Thenを開くと立ち上げた最初の活動でなければなりません。
boolean loginedBefore = hasLogined();//may be a blocking operationø
if (loginedBefore) {//logined before
Intent intent = new Intent(SplashActivity.this, LoginActivity.class);
startActivity(intent);
} else {// first launch
Intent intent = new Intent(SplashActivity.this, SplashActivity.class);
startActivity(intent);
}
上記のコードはSplashActivity.java
でonCreate
方法です。
申し訳ありません私はすでに私の質問を編集します。私のケースでは のログインアクティビティが最初にあって、スプラッシュスクリーンアクティビティに行き、main acvitiyに行きます。 –
plsマニフェスト – darwin
のランチャーアクティビティとしてスプラッシュ画面が使用されていることを確認してください。ログインは最初に洗濯機として設定され、次にスプラッシュスクリーンに行き、その後主な活動に私は混乱してしまいました –
URが必要なフローは何ですか、詳細に説明できます – darwin