Note that there are some explanatory texts on larger screens.

plurals
  1. POIssue when i scroll in my listview it adds addtional ToggleButtons that i add with an Array
    primarykey
    data
    text
    <p>I have the Vraag Class that i use to make the different items in the List. That class has an Array of the Antwoord class. For each Antwoord i want a togglebutton that i added with the for loop. The problem now is that when i scroll in the list it adds additional togglebuttons to the list items. Here is my adapter code:</p> <pre><code>public class VraagListAdapter extends ArrayAdapter&lt;Vraag&gt;{ public Context context; public List&lt;Vraag&gt; vragen; ViewHolder holder; int id = 0; public VraagListAdapter(Activity context, List&lt;Vraag&gt; vragen){ super(context, R.layout.vraag_item, vragen); this.context = context; this.vragen = vragen; } @Override public View getView(int position, View convertView, ViewGroup parent) { if(convertView == null) { LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); convertView = inflater.inflate(R.layout.vraag_item, null, false); holder = new ViewHolder(); holder.vraag = (TextView)convertView.findViewById(R.id.tv_vraag); holder.group = (RadioGroup)convertView.findViewById(R.id.toggleGroup); holder.position = position; holder.toggle = new ToggleButton(context); convertView.setTag(holder); } else{ holder = (ViewHolder) convertView.getTag(); } holder.vraag.setText(vragen.get(position).getVraag()); final int positievraag = position; holder.group.setOnCheckedChangeListener(ToggleListener); for(Antwoord a : vragen.get(position).getAntwoorden()){ holder.toggle = new ToggleButton(context); holder.toggle.setText(a.getAntwoord()); holder.toggle.setTextOn(a.getAntwoord()); holder.toggle.setTextOff(a.getAntwoord()); holder.toggle.setId(id); if(a.getVisible() == false){ holder.toggle.setVisibility(ToggleButton.INVISIBLE); } holder.toggle.setOnClickListener(new OnClickListener() { @Override public void onClick(View view) { // your click actions go here ((RadioGroup)view.getParent()).check(view.getId()); vragen.get(positievraag).setAntwoord((String)holder.toggle.getText()); } }); id++; holder.group.addView(holder.toggle); } return convertView; } static class ViewHolder { TextView vraag; RadioGroup group; ToggleButton toggle; int position; } static final RadioGroup.OnCheckedChangeListener ToggleListener = new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(final RadioGroup radioGroup, final int i) { for (int j = 0; j &lt; radioGroup.getChildCount(); j++) { final ToggleButton view = (ToggleButton) radioGroup.getChildAt(j); view.setChecked(view.getId() == i); } } }; </code></pre> <p>}</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.
    1. This table or related slice is empty.
    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