0

(Android) 最初のアクティビティは SplashActivity です。

これが好きなときに最初のアクティビティをスキップしたい:アプリを開く - > splashactivity-> secondActivity-> [ホーム]ボタンを押す - > [アプリアイコン] - > [secondactivity]を押します

これは可能ですか?どのように?

SOLVED

android:launchMode shoud be "standard"
4

3 に答える 3

2

ホームボタンを押してアプリを再起動すると、何もする必要はありません。SecondActivity が表示されます。戻るボタンを押したときにアプリが存在する場合は、SecondActivity を開始するときに SplashActivity で finish() を呼び出します。

于 2013-05-15T01:26:51.443 に答える
0

onPause()SecondActivity のメソッドをオーバーライドして、アプリがそのアクティビティに到達したことを示すマーカーを保存し、onResume()その状態が見つかった場合は SplashActivity のメソッドで SecondActivity をすぐに開始する必要があると思います。

アクティビティのライフサイクルの詳細については、アクティビティのドキュメントを参照してください: http://developer.android.com/reference/android/app/Activity.html#ActivityLifecycle

より良い設計は、SecondActivity を最初に開始し、次に SplashActivity をそれ自体の上に開始することです。そうすれば、前回の実行で状態マーカーが見つかった場合、SplashActivity を開始する必要がまったくなくなります。

于 2013-05-15T01:31:16.460 に答える
0

それは、これをどのように達成したいかによって異なります。個人的には、スプラッシュ アクティビティの使用はまったく避けたいと思います。トーストは同じことを達成し、アクティビティが完了したら閉じることができます..トーストには写真とテキストがあるので、本当にスプラッシュのように見えます..

やりたいことは、最初のアクティビティを開始したときに 2 番目のアクティビティが一時停止状態にあるかどうかをテストすることです。一時停止されている場合は、finish(); 最初の活動。

私はプロではありませんが、2 番目のアプリの onpause 呼び出しに何かを保存し、onstop メソッドでそれをクリアする必要があると思います..

繰り返しになりますが、単一のアクティビティの作成時にトーストを表示するだけで、これらすべてをよりスムーズに処理できます。open_app => on_create => toast => hide_toast ロードが完了したら => ホームを押す => アプリのアイコンを押す => no_on_create => トーストなし => 戻るボタンを押す => アプリを閉じる => アイコンを押す => goto_10

注: 戻るボタンを押すと、すべてのベットがオフになります。アプリはメモリからアンロードされるため、スプラッシュがロードを非表示にする場合 (スプラッシュが発生する唯一の理由)、アプリを再度ロードする必要があるため、スプラッシュを再度表示する必要があります。

スプラッシュを広告として使用していて、あまり頻繁に表示したくない場合。次に、SharedPreferences を使用して、スプラッシュが最後に表示されたとき、またはアプリが最後に一時停止されたときを保存することをお勧めします。

于 2013-05-15T02:05:05.113 に答える