Open
Conversation
…oved downloading images to okhttp; ui of the list;
| /** | ||
| * The executor to post result back on UI thread | ||
| */ | ||
| @NonNull private Executor mPostExecutor; |
Collaborator
There was a problem hiding this comment.
Почему ты не в некоторых местах аннотируешь все ноннулами, а в некоторых нет?
Если уж все так серьезно, то можно и final проставить)
Author
There was a problem hiding this comment.
Это желание везде ставить аннотации приходит волнами:-) Надо больше дисциплины.
Author
|
Улучшил CollageLoader - теперь в адаптере не надо управлять подписками (loader сам отменяет, если видит что пришёл ещё один запрос). |
aleien
added a commit
to aleien/background
that referenced
this pull request
Jul 31, 2016
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Ссылки на изображения и колбеки хранятся в WeakReference.
Добавлен механизм subscribe/unsubscribe для возможности отписки от получения результата.
Реализован LRUCache для изображений.
Для загрузки списка исполнителей использован AsyncTask.
Для демонстрации фич был создан RecyclerView со списком жанров. При скролле изображения подгружаются и компонуются в коллаж через CollageLoader (изображения никаким образом в адаптере не кешируются, интереса ради). Если для холдера onBindViewHolder был вызван дважды во время скролла, то старая подписка отменится. Во время скролла в главном потоке критическая секция, поэтому изображения не будут выставлены, до тех пор пока происходит скролл. Когда палец будет убран, то изображения будут выставлены.
Для внедрения зависимостей использован Dagger2.
Проблемы:
Пример:
Жду обратной связи:)