旋转屏幕后,带有页眉/页脚的小ListViews为空

时间:2013-06-27 12:21:15

标签: android listview android-listview screen-orientation listview-adapter

Android上的ListView存在一个非常奇怪的问题。

当我旋转设备时,带有页眉和/或页脚的ListView如果太小则会变得不可见。

ListView的项目是正确的。它们会从savedInstanceState正确还原,并且会在活动的Adapter中创建并绑定新的onCreate。我甚至添加了日志记录到适配器的getCountgetView,它显示了正确的结果。

问题是该列表只有在短于其高度时才会看不见(尝试使用match_parent和恒定高度):

  • 如果根本没有溢出的项目(例如,8个项目),则在旋转屏幕时列表完全消失。
  • 如果仅在高度为match_parent的横向模式(16项)中出现溢出,当我进入纵向模式并以横向模式重新出现时,列表将消失。
  • 如果两个方向都有溢出或尺寸恒定(24个项目),则一切都会正确显示。

在旋转设备之前,列表也会正确显示。

列表有什么问题?

1 个答案:

答案 0 :(得分:0)

通过在适配器中创建页眉/页脚替换addHeaderView / addFooterView来解决问题(使用isEnabled / getView / getViewCount)。但是,我仍然想知道如何在使用真正的页眉和页脚时克服这个问题。