私のオブジェクトリストが空でない場合はListView
を表示したいが、リストが空の場合はViewStub
を表示したい。私はこれを動作させることができますが、画面の向きを変えるたびに、私は自分のリストに追加した新しいデータを失います。Android ListActivity - 空のリストと空でないリストの切り替え
基本的に、私は新しいオブジェクトを追加するたびに、オブジェクトリストを変更してメソッドnotifyDataSetChanged()
を呼び出すアダプタのchangeData()メソッドを呼び出します。この変更をすべてのビューで維持する方法についてのアドバイスはありますか?
は、(XMLでもっとありますが、それは無関係です):あなたがonCreate()
方法で提供されていますsavedInstanceState Bundle
を使用して、画面状態を維持する必要が
<ListView android:layout_width="fill_parent"
android:layout_height="wrap_content" android:layout_weight="1"
android:id="@android:id/list"></ListView>
<ViewStub android:id="@android:id/empty"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center" android:layout="@layout/empty" />
</FrameLayout>
、私はそれが私のAndroidManifest にこれを追加することで動作するようになった<活動のアンドロイド:名=「YourActivity」アンドロイド:configChanges =「オリエンテーション| keyboardHidden」> – JDelonge
素敵な、私のANSはウル本当PROBのために右です。 –
あなたのマニフェストにconfigChangesのものを追加することは、素早く汚れた作業であり、あなたの問題を本当に解決するものではありません。 – SeanPONeil