First Question
I use Lazy load of images in ListView to load images in a ListView and a GridView. It works but the images are loaded form bpttom to top. How to fix that?
Bonus Question
Can I use a loading animation in a image view while the real image is loaded? Right now it's just a default image.
In ImageLoader.java you could replace
photoToLoad=photosQueue.photosToLoad.pop();
with
photoToLoad=photosQueue.photosToLoad.get(0);
photosQueue.photosToLoad.remove(photoToLoad);
It will change the order.
To display ProgressBar you can just add it to item.xml. Initially ProgressBar is visible and image is hidden. After bitmap is downloaded you hide ProgressBar and show image. But I would not recommend doing that. While images are being decoded in the background they consume processor power and all your progress bars may be freezing sometimes.
Related
I have an app that loads content from a database as well as images from the internet. I am using a RecyclerView along with CardView to display my content in a list form.
Each row has an image on the left side and text on the right.
The problem is that the text loads fast but the image takes time to load, so I want the image to continue loading in the background and then load into the ImageView object once loading is complete. I have no idea how to tackle this.
I use Picasso for this situation, but u can also use Glide and many more libraries. The documentation is pretty simple.
Try Picasso:http://square.github.io/picasso/
It's a one liner in onBindViewholder():
Picasso.with(context).load(url).into(viewHolder.imageView);
I am currently doing a project which needs to load images in a listView with some text from web.I am using universal image loader library,every thing work fine images are loading perfectly without any problem, but my requirement is that if there is no image in a specfic url, i dont want to show that image view in the listview row.which is similer to the news stand app of google.
in the above screen of the newsstand app if there is no image the imageview is not shown and the text will fill to the total width of the cell or row in the listview.How can i achieve this requirement.i have goggled but did not get any right solution or clue to fix this issue,can any one give any snippet or any idea to sort out this issue.
Thank you
In your adapter, when you call the library to display the image, if there is no image url just set the visibility of your ImageView to GONE (and VISIBLE again when there is an url).
If you want to wait that the image is completely loaded to make the ImageView visible, you'll need to register a loading listener. See here.
I have a listView in which I have text and an image view Now the data is coming from the service in this case text is of some bytes but due to images size imageview populate after some time . for this I want to show loading symbol in in imageview so that in time of downloading user not say that the app is not able to show images. I have implemented all listActivity and adapters concepts and its working fine but the images take time due to which the imageview part shows black area . any help
Here this I want:
In Android we called it lazy list..
this will help you to understood..
1.Lazy loading of images in ListView
2.http://www.technotalkative.com/android-asynchronous-image-loading-in-listview/
For Image issue :
Change in ImageLoader class (if Using Lazy List)
final int stub_id=R.drawable.ic_launcher; //change it to process image
Good Luck
Place a ProgressBar and keep the imageView over the ProgressBar.So the progress bar is visible when there is no image in the image view. Also use lazyList to load image.
You might want to check out Android Query. it's a library that also supports Asynchronous image loading and caching.
Android
I am using an Image Loaded which loads images based on requirment and since the images are big. I want to display an intermediate Spinning Image showing which would convey that the image is loading to the User.
I am displaying these images in the Viewpager.
We can not use a Gif image to display the animation and i wonder how it can be done.
P.S i am not looking for a Progress Dialog.
You could try doing a View Animation on the ImageView. Rotate is one of the included animations, and you can define it in XML.
Here's a Youtube Video from Google explaining it a little more.
I have a scrollview and in each row I load a picture plus text (the picture path and text are loaded from database). The problem is that if the picture has a very high resolution, the application moves very slow, and when I scroll, it takes a while until it loads, but when I resize the picture, the scrolling becomes fluid. So, the question is: how can I make the app faster? should I load a thumbnail of the picture and load the thumbnail instead of the actual image?
I think you are loading the contents of the list view on the main UI thread (Reason for the UI to be less responsive). I suggest loading the contents of the list using an AsyncTask. Hope this helps you.