Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>You can try something like this. I cleaned up and simplified your code. </p> <pre><code>public class EfficientAdapter extends BaseAdapter { private Activity mActivity; private ArrayList&lt;SearchTracks&gt; mSearchTracks; private ResultatMultiple mResultatMultiple; private int mSelectedPosition; public EfficientAdapter(Activity activity, ArrayList&lt;SearchTracks&gt; searchTracks) { mActivity = activity; mSearchTracks = searchTracks; } public EfficientAdapter(ResultatMultiple resultatMultiple){ mResultatMultiple = resultatMultiple ; } public void setSelectedPosition(int position) { mSelectedPosition = position; } @Override public int getCount() { return mSearchTracks.size(); } @Override public Object getItem(int position) { return position; } @Override public long getItemId(int position) { return position; } @Override public View getView(final int position, View convertView, ViewGroup parent) { View view = convertView; ViewHolder holder = null; if(convertView == null) { LayoutInflater inflater = (LayoutInflater)mActivity.getSystemService(Context.LAYOUT_INFLATER_SERVICE); view = inflater.inflate(R.layout.ecran_multiple_row, null); holder = new ViewHolder(); holder.indexTextView = (TextView)view.findViewById(R.id.txIndex); holder.titleTextView = (TextView)view.findViewById(R.id.txSTitle); holder.buttonOnOffImageView = (ImageView)view.findViewById(R.id.btOnOFF); view.setTag(holder); }else { holder = (ViewHolder)view.getTag(); } int index = position + 1; holder.indexTextView.setText((index &lt;= 9 ? "0" : "") + Integer.toString(index)); holder.titleTextView.setText(mSearchTracks.get(position).getTitle()); if(position % 2 == 0) { view.setBackgroundResource(R.drawable.listview_selector_odd); }else { view.setBackgroundResource(R.drawable.listview_selector_even); } if(mSearchTracks.size() == 1 || position == mSelectedPosition) { holder.buttonOnOffImageView.setBackgroundResource(R.drawable.air_radio_button_rouge); }else { holder.buttonOnOffImageView.setBackgroundResource(R.drawable.air_deezer_check); } return view; } private class ViewHolder { public TextView indexTextView; public TextView titleTextView; public ImageView buttonOnOffImageView; } } </code></pre> <p>Now in your onClick listener you can call <code>listAdapter.setSelectedPosition(position);</code> and then <code>listAdapter.notifyDataSetChanged();</code> to reload your table. </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.
 

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