Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>This is the complete solution of the problem and mow it is working perfectly...:)</p> <pre><code>public class Listadapter extends ArrayAdapter&lt;HashMap&lt;String, String&gt;&gt; { ArrayList&lt;HashMap&lt;String, String&gt;&gt; originalList; ArrayList&lt;HashMap&lt;String, String&gt;&gt; prodlist; private ProductFilter filter; ArrayList&lt;Drawable&gt; prodDrawable; public Listadapter(Context context, int textViewResourceId, ArrayList&lt;HashMap&lt;String, String&gt;&gt; Strings) { super(context, textViewResourceId, Strings); this.prodlist = new ArrayList&lt;HashMap&lt;String, String&gt;&gt;(); this.prodlist.addAll(productList); this.originalList = new ArrayList&lt;HashMap&lt;String, String&gt;&gt;(); this.originalList.addAll(productList); this.prodDrawable = new ArrayList&lt;Drawable&gt;(); this.prodDrawable.addAll(drawable); } @Override public Filter getFilter() { if (filter == null) { filter = new ProductFilter(); } return filter; } private class ViewHolder { TextView txtprodName; TextView txtcategory; TextView txtOfferDate; ImageView ProductImage; } @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder = null; Log.v("ConvertView", String.valueOf(position)); if (convertView == null) { LayoutInflater vi = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE); convertView = vi.inflate(R.layout.product_list_item, null); holder = new ViewHolder(); holder.txtprodName = (TextView) convertView .findViewById(R.id.txtprodName); holder.txtcategory = (TextView) convertView .findViewById(R.id.txtcategory); holder.txtOfferDate = (TextView) convertView .findViewById(R.id.txtOfferDate); holder.ProductImage = (ImageView) convertView .findViewById(R.id.ProductImage); convertView.setTag(holder); } else { holder = (ViewHolder) convertView.getTag(); } HashMap&lt;String, String&gt; hm = prodlist.get(position); holder.txtprodName.setText(hm.get(TAG_PRODUCT_NAME)); holder.txtcategory.setText(hm.get(TAG_CATEGORY_NAME)); holder.txtOfferDate.setText(hm.get(TAG_OFFER_START_TIME)); /* * if (drawable.get(position) != null) * holder.ProductImage.setImageDrawable(drawable.get(position)); * else * holder.ProductImage.setImageResource(R.drawable.nopic_place); */ try { holder.ProductImage .setImageDrawable(prodDrawable.get(position)); } catch (Exception exception) { holder.ProductImage.setImageResource(R.drawable.nopic_place); } return convertView; } private class ProductFilter extends Filter { @Override protected FilterResults performFiltering(CharSequence constraint) { constraint = constraint.toString().toLowerCase(); FilterResults result = new FilterResults(); if (constraint != null &amp;&amp; constraint.toString().length() &gt; 0) { ArrayList&lt;HashMap&lt;String, String&gt;&gt; filteredItems = new ArrayList&lt;HashMap&lt;String, String&gt;&gt;(); prodDrawable.clear(); for (int i = 0, l = originalList.size(); i &lt; l; i++) { HashMap&lt;String, String&gt; p = originalList.get(i); if (p.toString().toLowerCase().contains(constraint)) { filteredItems.add(p); try { prodDrawable.add(drawable.get(i)); } catch (Exception exception) { prodDrawable.add(null); } } } result.count = filteredItems.size(); result.values = filteredItems; } else { synchronized (this) { prodDrawable.clear(); prodDrawable.addAll(drawable); result.values = originalList; result.count = originalList.size(); } } return result; } @SuppressWarnings("unchecked") @Override protected void publishResults(CharSequence constraint, FilterResults results) { // TODO Auto-generated method stub prodlist = (ArrayList&lt;HashMap&lt;String, String&gt;&gt;) results.values; notifyDataSetChanged(); clear(); for (int i = 0, l = prodlist.size(); i &lt; l; i++) add(prodlist.get(i)); notifyDataSetInvalidated(); } } } </code></pre>
    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