Search code examples
androidandroid-listviewexpandablelistviewandroid-imageviewimage-load

Load image from webUrl at ImageView in ExpandableListView in android


In my project i am using google webService in which i am quering different query like-- hospital, cinema hall, resort etc. and get result in json format . From json i get so many data like Name, lat, lng, imageUrl, Web url in respective query. And i am manupulating these data and showing it in my Expandable listView. I am able to do show all data but when i am loading image on ImageView it is showing some mismatch. For loading image, I am using ImageLoader, FileCache, MemoryCache and Utils java class. Basically question is i have http web url for image and now i want to show it on my ImageView at Expandable listView, and i am not properly perform it. Please any buddy help.


Solution

  • Tikam done, try to use this class,

    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.Reader;
    import java.io.StringWriter;
    import java.io.Writer;
    
    
    
        /**
         * 
         * @author JSR
         *
         */
    
     public class StreamUtils {
    
    /**
     * A helper method to convert an InputStream into a String
     * @param inputStream
     * @return the String or a blank string if the IS was null
     * @throws IOException
     */
    public static String convertToString(InputStream inputStream) throws IOException {
        if (inputStream != null) {
            Writer writer = new StringWriter();
    
            char[] buffer = new char[1024];
            try {
                Reader reader = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"), 1024);
                int n;
                while ((n = reader.read(buffer)) != -1) {
                    writer.write(buffer, 0, n);
                }
            } finally {
                inputStream.close();
            }
            return writer.toString();
        } else {
            return "";
        }
    }
     }