title: RatingBar onClick
body: <p>I have a ListView that uses different XML files to create Views and make items out of.  One of these XML files contains a RatingBar.  Everything displays and looks excellent.</p>
  
  <p>I'm trying to attach an onClick handler to the RatingBar to launch a new Activity.  My RatingBar is of style ?android:attr/ratingBarStyleSmall; so it's just an indicator (I want the small RatingBar click to take the user to an Activity where they can do various ratings).</p>
  
  <p>My problem is the onClick handler for the RatingBar never gets executed.  What makes it more interesting is that I've used the same code to make a LinearLayout clickable and it works fine.  Could anyone tell me why?</p>
  
  <p>My Adapter's getView looks as such:</p>
  
  <pre><code>@Override
  public View getView(int position, View convertView, ViewGroup parent) {
  
      int type = getItemViewType(position);
  
      // get the View for this list item
      View v = convertView;
      if (v == null) {
          LayoutInflater vi = (LayoutInflater)getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
          switch (type) {
              // ...
              case TYPE_LOOKUP:
                  v = vi.inflate(R.layout.layout_itemlist_itemlookup, parent, false);
                  LinearLayout vLookup = (LinearLayout)v.findViewById(R.id.itemlist_lookup);
                  if (vStore != null) {
                      vStore.setOnClickListener(new View.OnClickListener() {
                              public void onClick(View v) {
                                  // THIS HANDLER WORKS FINE
                                  Intent intentLaunchLookup = new Intent(ActivityItemList.this, ActivityLookup.class);
                                  startActivity(intentLaunchLookup);
                              }
                          });
                  }
                  break;
              case TYPE_SEPARATOR:
                  v = vi.inflate(R.layout.layout_itemlist_itemseparator, parent, false);
                  RatingBar r = (RatingBar)v.findViewById(R.id.itemlist_rating);
                  if (r != null) {
                      r.setOnClickListener(new View.OnClickListener() {
                              public void onClick(View v) {
                                  // THIS HANDLER DOES NOT GET EXECUTED (r IS NOT NULL; SO THIS SHOULD HAVE BEEN CREATED)
                                  Intent intentLaunchRating = new Intent(ActivityItemList.this, ActivityRating.class);
                                  startActivity(intentLaunchRating);
                              }
                          });
                  }
                  break;
              // ...
          }
      }
      // …
  
    // return the created view
      return v;
  }
  </code></pre>