我想使用ListView制作一个类似聊天的视图,其中新消息出现在屏幕的底部(因此我使用android:stackFromBottom =“true”)我想添加一个标题到ListView中,它将出现在屏幕的顶部。当消息很少时,消息头和消息之间会有一个空的空间,当消息很多时,ListView将是可滚动的,并且消息头将被隐藏,当底部消息可见时(消息头将滚动其余的消息)。 问题是我不能告诉ListView让它的标题或项目填充屏幕上的剩余空间。 android:layout_height =“fill_parent”没有帮助。我可以使用RelativeLayout使标题静态,但我不想。有任何想法吗?Android ListView:填充屏幕上剩余空间的页眉/页脚
回答
为什么不把列表视图放在3行的表格布局中。将列表视图放在中间行,然后使用顶部和底部行作为页眉和页脚。
垂直使用LinearLayout,顶部为标题,中间为ListView,layout_weight =“1”,然后为页脚。
一个解决方案,如果你希望头可以滚动。 是在您的适配器中膨胀位置1,您想要滚动的标题。
但是,当我滚动ListView的头将保持可见。正如我所说的情况有点问题 - 我想在顶部,当没有足够的消息(和消息在底部)的头,但是当空间充满消息和ListView成为可滚动的,我想该标题与ListView一起滚动。 – Elena 2011-04-27 09:16:30
嗯..这有点复杂。检查我的新答案。 – 2011-04-27 14:58:12
谢谢你继续回答我!我仍然不知道如何将标题放在屏幕顶部(将其与屏幕顶部对齐),并在没有足够的内容填充ListView时将剩下的项目放在底部。在代码中进行一些硬核计算是可能的解决方案,但我正在寻找一种更智能的方法来实现它。 – Elena 2011-04-29 13:44:46
只是做一个不同的布局,如header_list.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:background="@drawable/listitem_background"
android:layout_marginLeft="4dip" android:layout_marginRight="4dip"
android:gravity="center_vertical|center_horizontal"
>
<TextView android:id="@+id/nearByLabel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Load More Results"
android:textColor="#000"
android:textStyle="bold"
android:textSize="20sp"
/>
</LinearLayout>
而在你的活动添加它像
View headerView = inflater.inflate(R.layout.header_list, null);
yourlistView.addHeaderView(headerView);
谢谢你的回答,但那不是问题。我现在解决的方法是将标题放在屏幕的顶部,并且当第一个列表项不再可见时用动画将其隐藏起来。 – Elena 2011-09-11 12:06:03
- 1. div填充剩余空间屏幕
- 2. 如何让ListView伸展的页脚填充剩余空间?
- 3. QML:调整ListView页脚组件的大小以填充剩余空间
- 4. ImageView填充剩余空间
- 5. 填充剩余空间(CSS)
- 6. Bootstrap,使行填充剩余的屏幕空间
- 7. Javascript需要填充内容和页脚之间的剩余高度空间
- 8. 用静态字段填充页面的剩余空间
- 9. 让剩余空格填充剩余空间
- 10. 填充视频下的剩余空间
- 11. Bootstrap - 填充剩余的垂直空间
- 12. 填充剩余的垂直空间
- 13. 2 TextViews平均填充剩余空间
- 14. 如何在页眉和页脚之间填充空的垂直空间
- 15. 如何让div填充剩余空间?
- 16. 输入填充剩余空间
- 17. 如何填充剩余空间
- 18. 如何让div填充剩余空间?
- 19. 使用Flexbox填充剩余空间
- 20. 如何让divs填充剩余空间?
- 21. 该填充整个剩余空间
- 22. 如何将TextView放在ExpandableListView下并使ExpandableListView填充剩余空间屏幕?
- 23. 页脚卡在页面中间div不填充保持屏幕
- 24. listview与页眉和页脚
- 25. 黑色填充剩余空间Listview xamarin-UWP
- 26. 垂直中心报告页脚在页面上的剩余空间上
- 27. Android - 使listview填充屏幕和列表项来填充可用空间
- 28. 如何用表格填充剩余的屏幕
- 29. Android布局对齐并填充视图中的剩余空间
- 30. 如何使屏幕上的剩余空间的div全高
什么马科斯说,将工作,但我更喜欢表格的布局。您可以将页眉和页脚设置为固定的高度(倾角),并根据所使用的设备允许列表视图缩小/增加高度。 – zzzzzzzzzzzzzzzzzzzzzzzzzzzzzz 2011-04-26 15:25:33
和马科斯的回答一样。当真空空间被填满时,我真的需要这个Header和ListView一起滚动。我在iPhone上看到它,但还没有在Android上看过,所以我不知道是否可能。 – Elena 2011-04-27 09:18:17