【问题标题】:How to reuse one custom listview activity in another activity?如何在另一个活动中重用一个自定义列表视图活动?
【发布时间】:2010-12-13 14:44:23
【问题描述】:

我可以将现有的 ListView 用作另一个视图中的子视图吗?

例如。我有一个自定义视图,玩家列表,我已经使用 ListActivity 和 ArrayAdapter 实现了,并且工作正常。

现在我想要一种方法将此列表视图作为视图对象,以便我可以将此视图对象作为子视图添加到另一个视图。

我的想法是,构建整个列表视图:我的 ListActivity 通过每次传递 ArrayList 项来迭代调用 ArrayAdapter 以构建列表项视图。

如果我是正确的,我需要一种方法来调用相同的 ArrayAdapter 并且需要准备一个 ListView 对象,对吧?

谁能帮帮我。

提前致谢。 呸呸呸

【问题讨论】:

    标签: android android-listview


    【解决方案1】:

    ListView 和 Adapter 是两个不同的东西:

    • 数据在某处(在数组中,或者如果您需要能够添加/删除项目,则在 ArrayList 中)
    • 适配器包含数据
    • ListView 显示它。

    所以:

    1. 构造你的空数组列表
    2. 根据 ArrayList 构建适配器
    3. 基于 Adapter 构建您的 ListView

    然后:

    1. 每次需要更改数据时,更新ArrayList
    2. 调用 Adapter.notifyDataSetChanged()
    3. 注意您的列表会自动更新 :)

    要将您的列表添加到表格布局,请参阅 API documentationSDK tutorialthis tutorial,其中有关于如何以编程方式添加行的特定部分。

    【讨论】:

    • 感谢您的回答。我的做法与您在我的球员列表视图中提到的完全一样。但我的问题是如何将这个现有的列表视图用作另一个视图的子视图?
    • 另一个小部件必须能够有子级(例如任何 Layouts 或 TabView、ViewSwitcher 等)。如何将列表视图设置为子视图取决于父视图。
    • 是的,我想将现有的列表视图添加为另一个布局的表格行。我该怎么做?
    • 嗨 Marvin... 很长一段时间后... 我想更详细地解释我的要求,正如我所说,我有播放器列表(自定义列表视图,填充了数组适配器)活动- 1 显示一长串玩家,现在我需要在另一个活动中显示前 2 名玩家-2(今天是前 2 名,可能会变为前 5 名)......所以我想重用我的玩家列表组件进行活动-2。还有一个问题,我可以为一项活动使用多个列表视图(因为我的活动 2 已经有一个列表视图)。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-12-16
    • 1970-01-01
    • 1970-01-01
    • 2012-09-16
    • 1970-01-01
    • 1970-01-01
    • 2014-11-02
    相关资源
    最近更新 更多