双向滚动列表视图?

时间:2011-02-15 07:48:14

标签: android android-layout

我正在研究创建一个显示EPG数据的视图。这应该是:

  • 有一个显示服务的固定标题列
  • 有一个固定的标题行,显示时间和
  • 内容区域,其具有相等高度的TextViews,其灵活宽度用于显示实际的EPG条目
  • 最重要的是,垂直搜索也必须滚动标题列,水平滚动必须滚动标题行。

除了自己绘制整个视图(在可滚动的内部?)如果有任何好的方法我可以使用涉及线性布局等,我完全难过。

任何提示都非常感谢 - 请注意我和Android初学者。

2 个答案:

答案 0 :(得分:1)

方法1 :预先生成所有内容(即所有观看次数)。

将顶部和左侧单向ScrollViews与双向ScrollView一起使用,并使得同步(Android: Synchronized scrolling of two different views)。如果您已经对ScrollViews进行子类化并添加自己的ScrollManager来处理通知,那么同步滚动并不难。

缺点:ScrollViews中主要内容区域的ScrollViews似乎确实是desired option。整个事情将变得非常耗费资源,因为所有项目都需要预先创建才能滚动。

答案 1 :(得分:1)

方法1负责滚动的视图同步,但却是一个巨大的资源浪费(想象一下EPG有30多个频道,每个频道有100多个事件)。

方法2 我可以想象的一种方法是 - 对于主要内容区域 - 具有自定义ArrayAdapter的ListView。自定义适配器可能会返回一个LinearLayout或类似事件来保存各个事件。这样,如果将ListView放入水平ScrollView中,滚动仍然可以双向工作,并且ListView中至少可以回收LinearLayouts本身。

有更好的方法吗?