Note that there are some explanatory texts on larger screens.

plurals
  1. POListView setChoiceMode not showing up
    primarykey
    data
    text
    <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>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload