Java ListView中的自定义行

Java ListView中的自定义行,java,android,listview,Java,Android,Listview,我有以下问题,我正在编写一个重复该网站的应用程序,如果你在网站上看到“本周开幕”、“票房冠军”和“也在影院”,那么我的问题是,如何将此自定义行添加到包含所有电影的ListView 这里是我到目前为止,请给我一些想法,使它看起来完全像在网站上 实现这一点的最简单方法是在项目视图的布局中包含分隔符。然后,仅当视图映射到新类别的第一个项目时,才使它们可见,否则将它们保留为已消失 示例(在半伪代码中): 首先,使项目布局如下所示: <LinearLayout orientation=vertica

我有以下问题,我正在编写一个重复该网站的应用程序,如果你在网站上看到“本周开幕”、“票房冠军”和“也在影院”,那么我的问题是,如何将此自定义行添加到包含所有电影的ListView

这里是我到目前为止,请给我一些想法,使它看起来完全像在网站上
实现这一点的最简单方法是在项目视图的布局中包含分隔符。然后,仅当视图映射到新类别的第一个项目时,才使它们
可见,否则将它们保留为
已消失

示例(在半伪代码中):

首先,使项目布局如下所示:

<LinearLayout orientation=vertical>
    <TextView id=divider>
    <your original item layout>
</LinearLayhout>

一个更奇特的解决方案是使用一个类似的库。它不像你的移动站点示例那样有效,但可能更好(例如,标题不会从屏幕上向上滚动)。

不,我什么也没试过,我不知道该怎么做,我对android非常陌生,在谷歌上找不到合适的。抱歉,忽略我的原始评论。ExpandableListView不是一个好主意。我会选择@matiash first选项,在您的自定义布局中包含分隔符,并使用VISIBLE and GONE。@懒惰的忍者,您能给我一个示例代码,让我知道如何操作吗?-你能给我第一个选项的示例代码吗?
Film item = getItem(position);
boolean needsDivider = (position == 0 || getItem(position - 1).filmCategory != film.filmCategory);
if (needsDivider)
{
    dividerView.setVisibility(View.VISIBLE);
    dividerView.setText(getFilmCategoryName(film.filmCategory));
}
else
    dividerView.setVisibility(View.GONE);