title: ListView setChoiceMode not showing up
body: <p>I have a ListView that is put together using a special adapter so that I can show every other listview in a different color. How do I write my code so that I am able to see a checklist without having to extend ListActivity (my activity only extends Activity) Here is my code.</p>
  
  <pre><code> public class TrackingMe extends Activity {
  
  @Override
  protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
  
      requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
  
      setContentView(R.layout.trackingme_layout);
  
      getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,
              R.layout.custom_title_3);
  
      SharedPreferences prefs = getSharedPreferences("Settings", 0);
      final String id = prefs.getString("ID", "");
  
      final TextView myTitleText = (TextView) findViewById(R.id.tvTitle3);
      if (myTitleText != null)
          myTitleText.setText(getResources().getString(R.string.Trackingme));
  
      ImageButton addFriends = (ImageButton) findViewById(R.id.btnAddFriends);
      addFriends.setOnClickListener(new OnClickListener() {
  
          @Override
          public void onClick(View arg0) {
              // TODO Auto-generated method stub
              Intent addFriends = new Intent("com.cellphone.INVITEFOLLOWER");
              startActivity(addFriends);
          }
      });
  
      final ListView lv2 = (ListView) findViewById(R.id.trackingmelistview);
      lv2.setChoiceMode(2);
      lv2.setTextFilterEnabled(true);
      refreshList(id,lv2);
  
      ImageButton refresh = (ImageButton) findViewById(R.id.btnRefresh2);
      refresh.setOnClickListener(new OnClickListener() {
  
          @Override
          public void onClick(View arg0) {
              // TODO Auto-generated method stub
  
              refreshList(id, lv2);
  
          }
      });
  }
  
  static final ArrayList&lt;HashMap&lt;String, String&gt;&gt; list2 = new ArrayList&lt;HashMap&lt;String, String&gt;&gt;();
  
  private void refreshList(String id, ListView lv) {
      // removes the list and rebuilds it will choose different response
      // string to get the refreshed times.
      DefaultHttpClient httpclient = new DefaultHttpClient();
      HttpPost httpost = new HttpPost(
              "http://iphone-radar.com/people_i_follow");
  
      JSONObject holder = new JSONObject();
      try {
          holder.put("userid", id);
          // pacific time zone for now
  
          StringEntity se = new StringEntity(holder.toString());
          httpost.setEntity(se);
          httpost.setHeader("Accept", "application/json");
          httpost.setHeader("Content-type", "application/json");
  
          ResponseHandler responseHandler = new BasicResponseHandler();
          final String response = httpclient
                  .execute(httpost, responseHandler);
          list2.removeAll(list2);
  
  
          SpecialAdapter adapter = new SpecialAdapter(this, list2,
                  R.layout.trackingme_row_layout, new String[] { "name" }, new int[] { R.id.tvTrackingMeNames});
  
  
          org.json.JSONObject obj = new org.json.JSONObject(response);
          JSONArray tracking_users = obj.getJSONArray("d");
  
          for (int i = 0; i &lt; tracking_users.length(); i++) {
              // for loop to get all data
              HashMap&lt;String, String&gt; temp = new HashMap&lt;String, String&gt;();
              JSONObject user = tracking_users.getJSONObject(i);
              temp.put("name", user.getString("full_name"));
              list2.add(temp);
              // upload location time
  
          }
  
          lv.setAdapter(adapter);
      } catch (JSONException e1) {
          // TODO Auto-generated catch block
          e1.printStackTrace();
      } catch (UnsupportedEncodingException e) {
          // TODO Auto-generated catch block
          e.printStackTrace();
      } catch (ClientProtocolException e) {
          // TODO Auto-generated catch block
          e.printStackTrace();
      } catch (IOException e) {
          // TODO Auto-generated catch block
          e.printStackTrace();
      }
  
  }
  
  }
      //here is the special adapter so that everyother line is a different color
      public class SpecialAdapter extends SimpleAdapter {
  private int[] colors = new int[] { Color.GRAY, Color.WHITE };
  
  public SpecialAdapter(Context context,
          ArrayList&lt;HashMap&lt;String, String&gt;&gt; list, int resource,
          String[] from, int[] to) {
      super(context, list, resource, from, to);
  
  }
  
  @Override
  public View getView(int position, View convertView, ViewGroup parent) {
      View view = super.getView(position, convertView, parent);
      int colorPos = position % colors.length;
      view.setBackgroundColor(colors[colorPos]);
      return view;
  }
    }
  </code></pre>
  
  <p>So far it shows up as a line of text based on what I get from my source. However, when I click on individual lines, they don't highlight and even though I wrote lv.setChoiceMode(2), there was no checkbox next to the listview. Thanks</p>
  
  <p>EDIT here is my trackingme_row_layout.xml </p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:orientation="vertical"
      android:layout_width="fill_parent"
      android:layout_height="fill_parent"&gt;
  
      &lt;TextView 
          android:id="@+id/tvTrackingMeNames"
          android:layout_height="wrap_content"
          android:layout_width="wrap_content"
          android:layout_alignParentTop="true"
          android:layout_alignParentLeft="true"
          android:layout_marginLeft="31dp"              
          android:text="TextView"  
          android:textAppearance="?android:attr/textAppearanceMedium"  
          android:textColor="#000000"/&gt;
  
  &lt;/RelativeLayout&gt;
  </code></pre>
  
  <p>and trackingme_layout.xml</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:orientation="vertical"
      android:layout_width="fill_parent"
      android:layout_height="fill_parent"&gt;
  
      &lt;ListView   
          android:id="@+id/trackingmelistview"
          android:layout_width="fill_parent"
          android:layout_height="fill_parent"
          android:paddingTop="10dp"/&gt;
  
      &lt;ImageButton 
          android:id="@+id/btnRefresh2" 
          android:text="Refresh" 
          android:src="@android:drawable/stat_notify_sync" 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" 
          android:layout_alignParentBottom="true" 
          android:layout_alignParentLeft="true"/&gt;
  
  &lt;/RelativeLayout&gt;
  </code></pre>