You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Xamarin.Android跳转新页面后ListView无法显示RFID扫描数据求助

问题解决:ListView无法显示扫描数据

核心问题出在TagListviewAdapter的Count属性实现上,你当前硬编码返回0,这会让ListView认为没有数据需要渲染,因此不会显示任何行。

修正步骤

1. 修复适配器的Count属性

修改TagListviewAdapter中的Count属性,返回实际的数据集长度,同时处理空值避免异常:

public override int Count
{
    get
    {
        return TagList?.Count ?? 0;
    }
}

2. 优化GetItem方法(可选但推荐)

当前GetItem方法返回的是position而非对应的数据项,虽然不影响ListView渲染,但正确实现可以避免潜在问题:

public override Java.Lang.Object GetItem(int position)
{
    return TagList[position] as Java.Lang.Object;
}

如果你的AviTag类没有继承Java.Lang.Object,可以将AviTag修改为继承该类:

public class AviTag : Java.Lang.Object
{
    public string EPC { get; set; }
}

3. 验证数据完整性(可选)

在ListviewActivity的OnCreate方法中添加日志,确认反序列化后的列表确实有数据:

// 反序列化后添加日志
System.Diagnostics.Debug.WriteLine($"扫描到的标签数量:{this.scannedAviTagList.Count}");

完成以上修改后,ListView就能正确加载并显示所有扫描到的RFID标签数据了。

内容的提问来源于stack exchange,提问作者BabyHai

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 08:02:50