Chcę pokazać serię zdjęć bez przerw między zdjęciami, w których zdjęcia zmieniają się w regularnych odstępach czasu. Zdałem sobie sprawę, że Picasso inicjuje ImageView zanim zacznie pobierać i zawsze to robi, bez względu na to, czy pobieram() czy nie przed wywołaniem w().Pobieranie obrazów z funkcją oddzwaniania w Picasso?
I fetch(), aby zachować lukę między obrazami małe, a także użyj .placeholder (R.color.black), ale luka jest nadal widoczny, nawet gdy obraz jest ładowany z pamięci.
Mój kod wygląda następująco
Picasso.with(getContext()).load(url).fetch();
potem z opóźnieniem [który jest obecnie ustalić i którego chcę, aby dostosować zależy od szybkości sieci]
Picasso.with(getContext()).load(url).into(screenSurface);
zauważyłem, że fetch() nie nie obsługuje żadnych parametrów wywołania zwrotnego i zwraca nieważne, więc wydaje mi się, że nie jest mi wiadomo, kiedy pamięć podręczna jest rozgrzana.
dwa pytania:
- mogę dostać zauważyłem, kiedy obraz jest buforowane?
- Czy istnieje inny sposób na pozbycie się przerw między obrazami i sprawienie, by były regularnie wyświetlane.
[Wiem, że mógłbym to jakoś kodować ręcznie, ale jeśli Picasso wspiera go, chciałbym go używać.]
To jest bardzo ładne, ale zdałem sobie sprawę, że nie mogę używać funkcji, takich jak .fit() lub .centerCrop(), ponieważ użyłem ich wcześniej, co nie jest problemem, ponieważ mogę ustawić odpowiednie atrybuty w ImageView. Ale chciałbym wiedzieć, czy użycie Target() ma jakiekolwiek znaczenie dla buforowania obrazów.Czy obrazy są zapisywane w pamięci podręcznej jako pobrane, więc mogę je technicznie wykorzystać w podglądach o różnych rozmiarach? Czy muszę ręcznie .resize() ręcznie lub coś podobnego? –
Możesz wywołać 'load (url) .fit(). W (screenSurface)' po użyciu obejścia w moim rozwiązaniu i dopóki 'url' jest taki sam, wierzę, że zostanie załadowany z pamięci podręcznej. – bmat