android – 手动填充ListView

android – 手动填充ListView,第1张

概述有没有办法使用多个数组手动填充具有多个列的ListView?我需要构建一个布局的一部分,我想使用ListView但我需要使用数据填充多个View项.由于它不是来自数据库,我不想使用游标,我只想使用几个并行数组.这可能吗? 根据我已正确解释您的问题,这应该可以使用适配器: 您可以扩展BaseAdaptor,覆盖getView()并让它返回一些ViewGroup,其中包含表示来自不同列表的数据的小部件 有没有办法使用多个数组手动填充具有多个列的ListVIEw?我需要构建一个布局的一部分,我想使用ListVIEw但我需要使用数据填充多个VIEw项.由于它不是来自数据库,我不想使用游标,我只想使用几个并行数组.这可能吗?解决方法 根据我已正确解释您的问题,这应该可以使用适配器:

您可以扩展BaseAdaptor,覆盖getVIEw()并让它返回一些VIEwGroup,其中包含表示来自不同列表的数据的小部件.

对选择的VIEwGroup进行子类化以构建更易于回收的复合视图:

public class DoubleText extends linearLayout {    TextVIEw t1,t2;    public DoubleText(Context c) {        super(c);        t1 = new TextVIEw(c);        t2 = new TextVIEw(c);        this.addVIEw(t1,0);        this.addVIEw(t2,1);    }    public voID setText(String s1,String s2) {        t1.setText(s1);        t2.setText(s2);    }}

对BaseAdapter进行子类化,但不显示需要的东西,还有更多,
但它应该更容易弄清楚,因为这是更大的差异
与使用适配器的其他示例相比:

public class DoubleAdaptor extends BaseAdaptor {    List<String> Lista,Listb; // <- these are your paralell arrays,they and the    Context c;                 // context need to be initialized by some method    @OverrIDe    public VIEw getVIEw(int position,VIEw convertVIEw,VIEwGroup parent) {        DoubleText recycled = (DoubleText) convertVIEw;        if (recycled == null) {            recycled = new Double(context);        recycled.setText(Lista.get(position),Listb.get(position));        return recycled;    }}

此外,您不必在所有行上具有相同的视图类型,即覆盖
getVIEwTypeCount()给androID提供不同视图数量的上限
要使用的类型和getItemVIEwType(int position)告诉androID哪种类型的视图
为特定行回收.

编辑:我建议检查适配器(接口)和BaseAdapter(抽象类)和listadapter(接口)上的androID开发人员文档,我也忘了告诉你,ListVIEw有一个可能感兴趣的setAdapter().

总结

以上是内存溢出为你收集整理的android – 手动填充ListView全部内容,希望文章能够帮你解决android – 手动填充ListView所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1124237.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存