Note that there are some explanatory texts on larger screens.

plurals
  1. POView Events inside a ListView Row
    primarykey
    data
    text
    <p>Hey guys, I have a listactivity that uses a custom row layout. The layout consists of 2 labels, a imageview and a Checkbox.</p> <p>I'm trying to fire a listener when the Checkbox is checked. The listener I wrote works, but instead of firing for the individual row, it fires for every single row in the listactivity. Like if I check the checkbox in my first row, the dialog will open and work correctly, however the 2nd, 3rd and 4th rows will also "fire".</p> <p>Here's the appropriate area of my code:</p> <pre><code>public View getView(int position, View convertView, ViewGroup parent) { View v = convertView; if (v == null) { LayoutInflater vi = (LayoutInflater) getContext().getSystemService( Context.LAYOUT_INFLATER_SERVICE); v = vi.inflate(R.layout.row, null); } final item o = items.get(position); if (o != null) { TextView tt = (TextView) v.findViewById(R.id.name); TextView bt = (TextView) v.findViewById(R.id.game); CheckBox cb = (CheckBox) v.findViewById(R.id.caught); if (cb != null &amp;&amp; o.getStatus()) { cb.setChecked(true); } else { cb.setChecked(false); } if (tt != null) { tt.setText(o.getName()); } if (bt != null &amp;&amp; o.getStatus()) { bt.setText("Game: " + o.getGame()); } cb.setOnCheckedChangeListener(new OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { o.setStatus(isChecked); if (isChecked) { AlertDialog.Builder builder2 = new AlertDialog.Builder( context); builder2.setTitle("What game are we talkin gabout?"); builder2.setItems(Checklist.GAMES, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int item) { Toast.makeText(context, Checklist.GAMES[item], Toast.LENGTH_SHORT).show(); o.setGame(Checklist.GAMES[item]); o.setStatus(true); me.notifyDataSetChanged(); } }); builder2.show(); } else { o.setGame(""); o.setStatus(false); me.notifyDataSetChanged(); } } }); } return v; } </code></pre> <p>Is there a more appropriate place to create my listener for the checkbox?</p>
    singulars
    1. This table or related slice is empty.
    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