2016-07-25 87 views
0

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

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 
     }); 

    } 
} 

回答

0

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

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

+0

感谢您的回复。但我怎样才能得到复选框的状态。因为它与适配器没有关联。 – user3556634

相关问题