私はHoloEverywhere+ActionBar Sherlock+HoloEverywhereのスライディングメニューアドオンを使用しています。スライドメニューの項目をクリックすると、さまざまなアクティビティを開始します。
私の問題は、Cyril MottierがPrixingのSlidingMenuに関する彼の記事で話していることを実装することです:-アクティビティ遷移のオーバーライド(これは簡単な部分です)-アクティビティ間のメニュー状態の保存/復元(これは私が管理できないことです):現在メニューが消えて気分が悪くなります。メニューの状態を保存したいのですが、次のアクティビティが開始されたら、その状態を復元します(たとえば、メニューの終了をアニメーション化します)。
Cyrilは、ビューのsaveHierarchyStateの使用について話します...:
Prixingアプリケーションのアクティビティ遷移は、Androidフレームワークが、メモリ不足の状態で破棄された後にアクティビティを復元するために使用するのとまったく同じ手法に依存しています。その結果、新しいアクティビティを開く必要があるたびに、
View#onSaveInstanceState()
/を使用して現在のUI状態の興味深い部分を保存し、 /View#saveHierarchyState(SparseArray<Parcelable>)
のおかげで新しく作成されたアクティビティに再適用します。View#onRestoreInstanceState(Parcelable)
View#restoreHierarchyState(SparseArray<Parcelable>)
しかし、それを実装する方法がわかりませんか?誰か手がかりはありますか?
私のアクティビティはすべて、スライディングメニューのインスタンスを保持する基本アクティビティクラスから継承しています。