原文链接:http://www.myexception.cn/android/452539.html

Android-为ListView增加Header

原文链接:http://marshal.easymorse.com/archives/3024
要实现类似IMBd类似的布局。

可以看出它的列表上方的图片展示区和下面列表条目是一体的,在上下滚动的时候。而图片展示区不是列表条目。
当然可以分别实现,图片展示区用Gallery,下面用ListView,但是如果横屏,则ListView部分的高度将很短,不方便上下滚动选择。也可以强制竖屏,不过这样用户体验会变差。
其实ListView提供了Header,IMBd实现的图片展示区就是自定义的ListView Header。
写个简单的例子说明这个事情。先写个最简单的。

这里的header就是一个TextView生成的ListView Header部分。在布局的Listview部分:
在代码中在ListView中加入Header:
1 2 3 4
listView = (ListView) this.findViewById(R.id.list); TextView textView = new TextView(this); textView.setText("header"); listView.addHeaderView(textView);
源代码见:
点击链接下载video-demo-010
大小 : 43.37 kB
下载次数 : 12

Header部分是可以添加多个的,比如:

对Header再做进一步定制。见效果:

这里的Header部分使用了自定义视图。

首先要增加一个小房子的图:

然后,创建一个针对Header的layout:

该文件内容:
然后在代码中通过inflate的方式把layout加入到header。
1 2
listView.addHeaderView(LayoutInflater.from(this).inflate( R.layout.table_title, null));

arrow
arrow
    全站熱搜

    戮克 發表在 痞客邦 留言(0) 人氣()