我有两个看起来像这样的文件:
public class ShowItem
{
public string name;
public string date;
public ShowItem(string name, string date)
{
this.name = name;
this.date = date;
}
public string getName()
{
return name;
}
}
和
public class ShowAdapter<ShowItem> : BaseAdapter<ShowItem>
{
List<ShowItem> shows = new List<ShowItem>();
...
public override View GetView(int position, View convertView, ViewGroup parent)
{
...
view.FindViewById<TextView>(Android.Resource.Id.Text1).Text = shows[position] ... ;
return view;
}
}
但是在第二节课中,当我在访问&#34;节目&#34;之后尝试访问ShowItem
方法时像这样的列表:shows[position]
(正在访问ShowItems
的列表,所以它也应该是ShowItem
,该类被标识为Object
类,我可以只访问那里的方法(Equals,GetHashCode,GetType,ToString),而不访问ShowItem
类中的公共方法或变量。我尝试过它,但它也被标识为Object类,即使我投了它。
答案 0 :(得分:2)
您的ShowAdapter<>
类是泛型的,通用类型名称为ShowItem
。它隐藏了实际的班级ShowItem
。它可能不应该是通用的。
public class ShowAdapter : BaseAdapter<ShowItem>
{
...
}