ListViewAndroidで非常に奇妙な問題があります。
デバイスを回転するListViewと、ヘッダーやフッターが小さすぎると見えなくなります。
の項目ListViewは正しいです。それらはsavedInstanceState正しく復元され、新しいAdapterが作成され、アクティビティの にバインドされonCreateます。getCountアダプタのとにロギングを追加getViewしたところ、正しい結果が表示されました。
問題は、リストがその高さよりも短い場合にのみ非表示になることです(match_parent一定の高さで試しました):
- オーバーフローするアイテムがまったくない場合 (たとえば 8 アイテム)、画面を回転させるとリストが完全に消えます。
- 高さのある横モード(16項目)でのみオーバーフローがある場合
match_parent、縦モードにするとリストが消え、横モードで再び表示されます。 - 両方の方向または一定サイズ (24 アイテム) でオーバーフローがある場合、すべてが正しく表示されます。
デバイスを回転させる前でも、リストは正しく表示されます。
リストの何が問題になっていますか?