我创建了一个ListView
并填充它我使用Adapter
。使用适配器来显示ListView单声道为Android
Adapter
类的GetView()
如下:
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();
}
其中开始电视所有元素都是TextView
一个ListView
内。
现在的问题是当我运行这段代码时,我得到如屏幕截图所示的以下输出。
即Row1
和Row2
的内容显示在Row1' while
Row2`显示正确的数据。
我知道它与position
变量有关,但花了很多时间后,我仍然无法破解它。
注意:数据来自DataTable
有两行。
ListView
的第一行应填入第一行DataTable
,而第二行ListView
应填入第二行DataTable
。
我绝对的初学者,当谈到单为Android,所以任何帮助赞赏...
那么第2行的剩余文本框呢?如何填充它们? – GAMA 2012-03-31 08:04:19
你可以发布'Resource.Layout.List_MktData'资源的内容吗? – Matthew 2012-04-04 08:38:05
根据你上面的代码,你会在列表中只有两个项目吗?如果是这种情况,您可以使用表格布局。 – Matthew 2012-04-04 09:08:52