Я создал ListView
и для его заполнения я использую Adapter
.
GetView()
из Adapter
класс выглядит следующим образом:
LayoutInflater inflater = activity.LayoutInflater;
if (convertView == null)
{
convertView = inflater.Inflate(Resource.Layout.List_MktData, null);
}
DataRow dr;
object[] row;
if(position==0)
{
Console.WriteLine("In position 0");
dr = result.Rows[0];
row=dr.ItemArray;
tvCMPValue.Text=row[0].ToString();
tvPrevClose.Text=row[1].ToString();
tvOpen.Text=row[2].ToString();
tvHigh.Text=row[3].ToString();
tvLow.Text=row[4].ToString();
tvClose.Text=row[5].ToString();
}
else if(position==1)
{
Console.WriteLine("In position 1");
dr = result.Rows[1];
row=dr.ItemArray;
tvPercChgValue.Text=row[0].ToString();
tvPrevCloseValue.Text=row[1].ToString();
tvOpenValue.Text=row[2].ToString();
tvHighValue.Text=row[3].ToString();
tvLowValue.Text=row[4].ToString();
tvCloseValue.Text=row[5].ToString();
}
где все элементы, начинающиеся с tv , TextView
в пределах ListView
.
Теперь проблема в том, что когда я запускаю этот код, я получаю следующий вывод, как показано на Снимке экрана.
т.е. Содержимое Row1
и Row2
отображается в Row1' while
Row2` показывает правильные данные.
Я знаю, что это что-то связанное с переменной position
, но, потратив на это много времени, я все равно не могу ее взломать.
Примечание. Данные поступают из DataTable
, имеющего две строки.
1-й ряд ListView
должен быть заполнен 1-м рядом DataTable
, а 2-й ряд ListView
должен быть заполнен 2-м рядом DataTable
.
Я абсолютный новичок, когда дело доходит до Mono для Android , поэтому любая помощь приветствуется ...