2011-08-28 6 views
2

私は、ユーザーが画面を反転させるたびにリセットからアプリケーションを停止しようとしています。私は本当に永遠に肖像画にしたいとは思わない。Android画面の向きのデータが失われる

私の問題は、画面が反転するたびに停止するサービスと、消去する設定があることです。画面の向きにかかわらず、そのままの状態にしておきたい。

あなたAndroidManifestであなたの活動に
+1

:あなたは、次の

final Object data = (Object) getLastNonConfigurationInstance()); if (data == null) { //Retrieve data }else{ //Use the saved data settings = data; } 

を行うことによって保存されたすべてのデータがある場合は、Androidデベロッパーガイドで約​​を読むことができます確認することができますonCreate機能で

再作成されます。ここであなたを助けるためにもっと多くの情報が必要です---標準のAndroidの設定とおすすめのサービスのパラダイムを使用していますかhttp://developer.android.com/reference/android/app/Service.html?または、カスタムの「サービス」と環境設定ストアを使用していますか? – debracey

+0

私は標準的なサービスを使用しています。プリファレンスは、現在使用しているものではありません。なぜなら、アクティビティーが再作成されてもサービスを実行し続けるように私がどのように使用できるかわからないからです – sisko

答えて

3

は、次のように設定します。

<activity android:name="YourActivity" android:configChanges="orientation|keyboardHidden"></activity> 

これは、あなたが保存することができ、画面の向きの変更やキーボードの変化状態

1

の「再作成」しないように自分自身を、あなたの活動を伝えますデータを使用して:

@Override 
public Object onRetainNonConfigurationInstance() { 
    return super.onRetainNonConfigurationInstance(); 
} 

保存するデータを返します。あなたがあなたの活動を中心に携帯電話を反転すると

関連する問題