具有混合源的ListView

时间:2015-08-03 01:22:45

标签: android listview android-contentprovider

是否有可能从多个来源获取ListView?我希望在同一个列表中有一些来自ContentProvider的硬编码项目和项目,我只想知道这是否可行。

3 个答案:

答案 0 :(得分:1)

您可以让两种类型的项目实现接口,例如

public interface Item {
    int TYPE_1 = 1;
    int TYPE_2 = 2;
    int getViewType();
    View getView(LayoutInflater inflater, View convertView, ViewGroup parent);
}

然后,您的Adapter可以是Item的列表。此外,如果您不熟悉View Holder模式,我建议您查找它。快速搜索显示了一个非常好看的例子here

答案 1 :(得分:0)

您可以让它们扩展一个公共父类,然后使用它来构造适配器。我以前做过这个,我希望能帮到你。

答案 2 :(得分:0)

所以,我意识到了

  • 我不在乎片段加载后是否更新了ContentProvider数据
  • 我想对列表中的数据进行操作,我不想在ContentProvider中反映出来。

所以我要将我的光标结果与我的硬编码项目一起转储到ArrayList,我认为应该可以正常工作。