2012-04-01 112 views
0
Error CS0508: 'my_android_project.ImageAdapter.GetItem(int)': return type must be 'Java.Lang.Object' to match overridden member 'Android.Widget.BaseAdapter.GetItem(int) 

这是我的第一类:第一次编程应用程序无法理解错误

using System; 

using Android.App; 
using Android.Content; 
using Android.Runtime; 
using Android.Views; 
using Android.Widget; 
using Android.OS; 

namespace my_android_project 
{ 
    [Activity (Label = "my_android_project", MainLauncher = true)] 
    public class Activity1 : Activity 
    { 
     int count = 1; 

     protected override void OnCreate (Bundle bundle) 
     { 
      base.OnCreate (bundle); 

      // Set our view from the "main" layout resource 
      SetContentView (Resource.Layout.Main); 
      var gridview = FindViewById<GridView> (Resource.Id.gridview); 
      gridview.ItemClick += delegate(object sender, ItemEventArgs args) { 
       Toast.MakeText (this, EventArgs.Postion.ToString() , ToastLength.Short).Show(); 
      }; 

      // Get our button from the layout resource, 
      // and attach an event to it 
      Button button = FindViewById<Button> (Resource.Id.myButton); 

      button.Click += delegate { 
       button.Text = string.Format ("{0} clicks!", count++); }; 
     } 
    } 
} 

二等:

using System; 
using Android.App; 
using Android.Content; 
using Android.Runtime; 
using Android.Views; 
using Android.Widget; 
using Android.OS; 

namespace my_android_project 
{ 
    // base class is ImageAdapter , derived class is BaseAdapter 

    /// <summary> 
    /// class start 
    /// </summary> 
    public class ImageAdapter : BaseAdapter 
{ 
    private readonly Context context; 

    public ImageAdapter(Context c) 
    { 
     context = c; 
    } 

    public override int Count 
    { 
     get { return thumbIds.Length; } 
    } 

    public override Object GetItem(int position) 
    { 
     return null; 
    } 

    public override long GetItemId(int position) 
    { 
     return 0; 
    } 

     public override View GetView(int position, View convertView, ViewGroup parent) 
    { 
     ImageView imageView; 

     if (convertView == null) 
     { 
      // if it's not recycled, initialize some attributes 
      imageView = new ImageView(context); 
      imageView.LayoutParameters = new AbsListView.LayoutParams(85, 85); 
      imageView.SetScaleType(ImageView.ScaleType.CenterCrop); 
      imageView.SetPadding(8, 8, 8, 8); 
     } 
     else 
     { 
      imageView = (ImageView) convertView; 
     } 
     imageView.SetImageResource(thumbIds[position]); 
     return imageView; 
    } // end of GetView 

     private readonly int[] thumbIds = { 
              Resource.Drawable.sample_2, 
              Resource.Drawable.sample_3, 
              Resource.Drawable.sample_4, 
              Resource.Drawable.sample_5, 
              Resource.Drawable.sample_6, 
              Resource.Drawable.sample_7, 
              Resource.Drawable.sample_0, 
              Resource.Drawable.sample_1, 
              Resource.Drawable.sample_2, 
              Resource.Drawable.sample_3, 
              Resource.Drawable.sample_4, 
              Resource.Drawable.sample_5, 
              Resource.Drawable.sample_6, 
              Resource.Drawable.sample_7, 
              Resource.Drawable.sample_0, 
              Resource.Drawable.sample_1, 
              Resource.Drawable.sample_2, 
              Resource.Drawable.sample_3, 
              Resource.Drawable.sample_4, 
              Resource.Drawable.sample_5, 
              Resource.Drawable.sample_6, 
              Resource.Drawable.sample_7   


     }; // end of thumbIds array 


    } // end of class 
} // end of namespace 

看起来像上线32我二等Mono Develop不喜欢那个'null'return ..

有什么想法吗?即时通讯在学习C#的过程中,它更适合于Android应用开发:)

回答

相关问题