public View getView(final int position, View convertView, ViewGroup parent) { SectionHolder sectionHolder = null; ViewHolder holder = null; convertView = listAdapter.getView(getIndexForPosition(position), convertView, parent); convertView.setTag(contactsIds[getIndexForPosition(position)]); holder = new ViewHolder(); holder.txtTitle = (TextView) convertView .findViewById(R.id.list_item_title); holder.id = contactsIds[getIndexForPosition(position)]; new ThumbnailTask(holder,contactsIds[getIndexForPosition(position)]).execute(); return convertView; } private class ThumbnailTask extends AsyncTask<Void, Void, Integer> { private String mId; private ViewHolder mHolder; public ThumbnailTask(ViewHolder holder, String id) { mId = id; mHolder = holder; } @Override protected Integer doInBackground(Void... params) { // TODO Auto-generated method stub int drawableId = getContactStatus(mHolder.id); // Log.i("DRAWABLE",drawableId+""); return drawableId; } protected void onPostExecute(Integer drawableId) { if (mHolder.id.equals(mId)) { if (drawableId != 0) { if (UpdateStatusService.user == 1) { mHolder.txtTitle.setCompoundDrawablesWithIntrinsicBounds(0, 0,drawableId, 0); } else { mHolder.txtTitle.setCompoundDrawablesWithIntrinsicBounds(0, 0,R.drawable.ic_action_quetion, 0); } } else { mHolder.txtTitle.setCompoundDrawablesWithIntrinsicBounds(0,0, android.R.color.transparent, 0); } } } } static class ViewHolder { public TextView txtTitle; public String id; }
This is my code of adapter to getView of the listview.
ListView Contains the list of contacts from the android.
but i am getting the java.util.concurrent.RejectedExecutionException Async task basically get the image from the server and if any number matches to the server data that will contain one image to set otherwise not.
So what should i do to avoid this exception?