从listview xamarin android获取所有项目

时间:2016-07-25 11:00:08

标签: listview xamarin.android

我在xamarin android中使用listview和自定义适配器。我想在按钮点击时获取listview的所有项目,但它只返回屏幕上的可见项目。否则它在视图对象中返回null。

for (int i = 0; i < lstview.Count; i++)
{

    View v = lstview.GetChildAt(i - lstview.FirstVisiblePosition);
    if (v != null)
    {
        CheckBox c = (CheckBox)v.FindViewById(Resource.Id.checkBox1);
        TextView tt = (TextView)v.FindViewById(Resource.Id.Text2);

        string StudentID = tt.Text;

        l.Add(new SaveAttendanceClass
        {
            Id = StudentID,
            IsPresent = c.Checked
        });

    }
}

1 个答案:

答案 0 :(得分:0)

ListView仅包含列表可见部分的View个对象。包含所有项目的对象(包括当前不在屏幕上的项目)是Adapter

迭代自定义适配器中的项目,而不是View中的ListView