我有一个使用RxJava从数据库中检索到的视频列表。我想在RecyclerViews中显示这些视频,并在此过程中生成缩略图。问题是缩略图的生成
<div>
<p>content</p>
<p>content</p>
<p>content</p>
<p>content</p>
<p>content</p>
<p>content</p>
<p>content</p>
<p>content</p>
<p>content</p>
<p>content</p>
</div>
速度太慢,以至于当我的列表中有很多视频时,它会阻止加载屏幕。
我想知道的是,检索我的视频列表的方式是逐个发送每个项目而不是整个列表,并在处理完每个项目(生成缩略图)时将其提供给UI(也许这种方法甚至不是正确的方法)。
这是我的视频加载代码:
Bitmap thumb = ThumbnailUtils.createVideoThumbnail(localVideo.getFilename(),
MediaStore.Images.Thumbnails.MINI_KIND);
答案 0 :(得分:1)
使用flatMapIterable
来&#34;展开&#34;内部清单:
Observable.fromCallable(() -> Arrays.asList(1, 2, 3, 4, 5, 6))
.subscribeOn(Schedulers.io())
.flatMapIterable(v -> v)
.observeOn(Schedulers.computation())
.map(v -> v * 2)
.observeOn(AndroidSchedulers.mainThread())
.subscribe(System.out::println);