0

私のアプリでは、1 つのタブ ホストと、タブのコンテンツとして 3 つのアクティビティ A、B、C があります。向きが変わると、現在のアクティビティが再開されます。アクティビティ B には Web ビューがあり、いくつかのビデオ リンクを動的にロードしています。ユーザーがこれらのビデオをクリックすると、再生されます。向きが変わると、B が再起動します。これにより、Web ビューが明確になり、停止した位置からビデオを再開できなくなります。このため、アクティビティ B のみが再起動されるのを防ぎたいと思います (これは 1 つのケースにすぎませんが、アクティビティ B を強制終了しない正当な理由は他にもたくさんあります)。

私が欲しいのは、「B」だけが破壊されて再作成されるのを防ぐ方法です。public void onConfigurationChanged(Configuration newConfig)
タブホスト アクティビティとアクティビティ「B」の両方でオーバーライドしてみました。しかし、onConfigurationChanged と共にアクティビティ B の onCreate メソッドを呼び出しています。B で onCreate を呼び出すと、ビューが更新され、B アクティビティの状態が失われます。つまり、Androidタブホストのアクティビティの1つに対して破棄/作成(2回目)が呼び出されるのを防ぐ方法はありますか? 前もって感謝します。

4

1 に答える 1

-1

向きの変更を制限する必要があります。そうしないと、向きが変更されるとアクティビティが再開されます。

方向の変更を制限するには、使用しているすべてのアクティビティのマニフェスト ファイルにこの行を追加する必要があります。そうしないと、アプリケーション自体に追加できます。

<activity android:name="A"
              android:configChanges="orientation|keyboardHidden"></activity> 
<activity android:name="B"
              android:configChanges="orientation|keyboardHidden"></activity> 
<activity android:name="C"
              android:configChanges="orientation|keyboardHidden"></activity> 
于 2012-09-11T07:47:46.177 に答える