title: Unable to get listView.ItemClick to be called in MonoDroid
body: <p>I have the following code:</p>
  
  <pre><code>protected override void OnCreate (Bundle bundle)
  {
      progress = ProgressDialog.Show(this, "", "Loading...");
      progress.SetProgressStyle(ProgressDialogStyle.Spinner);
  
      base.OnCreate (bundle);
  
      //Set the Activity's view to our list layout        
      SetContentView(Resource.Layout.LawsAndRegsList);
  
      new Thread(new ThreadStart(() =&gt; {
          //Create our adapter
          listAdapter = new LawsAndRegsListAdapter(this);
          this.RunOnUiThread ( () =&gt; {
              //Find the listview reference
              listView = FindViewById&lt;ListView&gt;(Resource.Id.listView);
  
              //Hook up our adapter to our ListView
              listView.Adapter = listAdapter;
  
              //Wire up the click event
              //listView.ItemClick += new EventHandler&lt;ListView.ItemClickEventArgs&gt;(listView_ItemClick);
              listView.ItemClick += listView_ItemClick;
  
              listAdapter.NotifyDataSetChanged(); 
  
              progress.Dismiss();
          });
      })).Start();
  }
  
  void listView_ItemClick(object sender, AdapterView.ItemClickEventArgs e)
  {
      //Get our item from the list adapter
      var item = this.listAdapter.GetItemAtPosition(e.Position);
  
      //Make a toast with the item name just to show it was clicked
      Toast.MakeText(this, item.Name + " Clicked!", ToastLength.Short).Show();
  }
  </code></pre>
  
  <p>Can anyone tell me why the ItemClick would not get called?</p>
  
  <p>It looks like what I have read and examples I have seen so what am I doing wrong? thanks for the help.</p>
  
  <p>UPDATE:</p>
  
  <p>Here are the two layouts I have:</p>
  
  <p>LawsAndRegsList:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:id="@+id/widget28"
      android:layout_width="fill_parent"
      android:layout_height="fill_parent"
      android:orientation="vertical"&gt;
      &lt;RelativeLayout
          android:layout_width="fill_parent"
          android:layout_height="wrap_content"
          android:background="@drawable/topLevelMenuBackground"
          android:orientation="horizontal"&gt;
          &lt;Button
              android:id="@+id/btnAddExpense"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_marginLeft="10dp"
              android:text="@string/ButtonHome"
              android:layout_centerVertical="true" /&gt;
          &lt;TextView
              android:id="@+id/lblExpenseCancel"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_alignParentRight="true"
              android:layout_marginLeft="10dp"
              android:layout_marginRight="15dp"
              android:text="@string/LawsAndRegs"
              android:textColor="#ffffffff"
              android:textSize="20sp"
              android:layout_centerVertical="true" /&gt;
      &lt;/RelativeLayout&gt;
      &lt;ListView
          android:id="@+id/listView"
          android:layout_width="fill_parent"
          android:layout_height="wrap_content" /&gt;
  &lt;/LinearLayout&gt;
  </code></pre>
  
  <p>LawsAndRegsListItem:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:id="@+id/widget28"
      android:layout_width="fill_parent"
      android:background="@drawable/topLevelMenuCellBackground"
      android:layout_height="40px"&gt;
      &lt;RelativeLayout
          android:layout_width="fill_parent"
          android:layout_height="wrap_content"
          android:orientation="horizontal"&gt;
          &lt;ImageView
              android:id="@+id/imageItem"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_marginLeft="10dp"
              android:layout_centerVertical="true"
              android:layout_gravity="center_vertical" /&gt;
          &lt;TextView
              android:id="@+id/textTop"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_centerVertical="true"
              android:textColor="#111479"
              android:text="hello"
              android:layout_toRightOf="@+id/imageItem"
              android:textStyle="bold"
              android:layout_marginLeft="10dp" /&gt;
          &lt;ImageButton
              android:src="@drawable/OrangeAccessoryButton"
              android:layout_width="wrap_content"
              android:layout_height="25dp"
              android:layout_alignParentRight="true"
              android:layout_marginLeft="10dp"
              android:layout_marginRight="15dp"
              android:layout_centerVertical="true"
              android:id="@+id/imageButton1"
              android:background="@android:color/transparent" /&gt;
      &lt;/RelativeLayout&gt;
  &lt;/LinearLayout&gt;
  </code></pre>
  
  <p>UPDATE #2:</p>
  
  <p>Added my LIstAdapter code:</p>
  
  <p>public class LawsAndRegsListAdapter : BaseAdapter
  {
      Activity context;</p>
  
  <pre><code>public List&lt;LawsAndRegs&gt; items;
  
  public LawsAndRegsListAdapter (Activity context) //We need a context to inflate our row view from
  {
      this.context = context;
  
      MY_SEB_SERVICE_ContentWS.ContentWS contentWS = new MY_WEB_SERVICE_ContentWS.ContentWS ();
      string sMenu = contentWS.GetMenuXML (146, 1, "", 0, 1033);
  
      XmlRootAttribute r = new XmlRootAttribute ("Item");
      var ser = new XmlSerializer (typeof(Item), r);
      StringReader stringReader;
      stringReader = new StringReader (sMenu);
      Item obj = (Item)ser.Deserialize (stringReader);
      ItemMenuItem[] m = obj.Menu.Item;
      ItemMenuItem larMenu = null;
      foreach (ItemMenuItem mnu in m)
      {
          if (mnu.ItemID == 155)
          {
              if (this.items == null)
                  this.items = new List&lt;LawsAndRegs&gt; ();
              larMenu = mnu;
              break;
          }
      }
  
      if (larMenu != null)
      {
          foreach (ItemMenuItemMenuItem imimi in larMenu.Menu.Item)
          {
              LawsAndRegs lar = new LawsAndRegs();
              lar.Name = (string)imimi.Items[2];
              lar.Image = (string)imimi.Items[3];
              this.items.Add (lar);
          }
      }
  }
  
  public override int Count
  {
      get { return items.Count; }
  }
  
  public override Java.Lang.Object GetItem(int position)
  {
      return position;
  }
  
  public override long GetItemId(int position)
  {
      return position;
  }
  
  public LawsAndRegs GetItemAtPosition(int position)
  {
      return items[position];
  }
  
  public override View GetView(int position, View convertView, ViewGroup parent)
  {
      //Get our object for this position
      var item = items[position];         
  
      //Try to reuse convertView if it's not  null, otherwise inflate it from our item layout
      // This gives us some performance gains by not always inflating a new view
      // This will sound familiar to MonoTouch developers with UITableViewCell.DequeueReusableCell()
      var view = (convertView ?? context.LayoutInflater.Inflate(Resource.Layout.LawsAndRegsListItem, parent, false)) as LinearLayout;
  
      //Find references to each subview in the list item's view
      ImageView imgView = (ImageView)view.FindViewById(Resource.Id.imageItem);
      imgView.Clickable = true;
      TextView textTop = (TextView)view.FindViewById(Resource.Id.textTop);
      textTop.Clickable = true;
  
      var bm = BitmapFactory.DecodeStream(
          new Java.Net.URL("http://www.SOME_SITE.com/" + item.Image).OpenStream());
      imgView.SetImageBitmap(bm);
  
      //Assign this item's values to the various subviews
      textTop.SetText(item.Name, TextView.BufferType.Normal);
  
      view.Clickable = true;
  
      //Finally return the view
      return view;
  }
  </code></pre>
  
  <p>}</p>
  
  <p>I added the view.clickable code in trying to get this to work.</p>