2015-07-19 80 views
0

我有兩個文件看起來像這樣:爲什麼我的公開課並沒有公開其他課程中的公開方法?

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; 
    } 
} 
第二類

然而,當我嘗試訪問這樣的「顯示」列表後訪問ShowItem方法: shows[position](它正在訪問的列表ShowItems,所以它也應該是ShowItem),該類被標識爲Object類,我只能訪問那裏的方法(Equals,GetHashCode,GetType,ToString),但不能公共方法或變量在ShowItem類中。我嘗試過投射它,但即使在投射它時它也只是被識別爲一個Object類。

回答

2

您的ShowAdapter<>類是通用類型名稱ShowItem。它隱藏了實際的類ShowItem。它可能不應該是通用的。

public class ShowAdapter : BaseAdapter<ShowItem> 
{ 
    ... 
} 
+0

就是這樣,謝謝 – gtsioni