Glide を使用して画像をダウンロードし、壁紙として設定しようとしています。ダウンロード中に、MaterialDialogs ライブラリを使用してダイアログが表示されますが、画像がほぼ読み込まれると、ダイアログが 1 秒間フリーズします...これは私のコード:
final MaterialDialog downloadDialogA = new MaterialDialog.Builder(context)
.content(R.string.downloading_wallpaper)
.progress(true, 0)
.cancelable(false)
.show();
Glide.with(context)
.load(wallurl)
.asBitmap()
.into(new SimpleTarget<Bitmap>() {
@Override
public void onResourceReady(Bitmap resource, GlideAnimation<? super Bitmap> glideAnimation) {
downloadDialogA.setContent(context.getString(R.string.setting_wall_title));
if (resource != null) {
WallpaperManager wm = WallpaperManager.getInstance(context);
try {
wm.setBitmap(resource);
Toast.makeText(context, R.string.set_as_wall_done, Toast.LENGTH_LONG).show();
Log.v("Wall", "It worked!");
} catch (IOException e2) {
Toast.makeText(context, e2.getLocalizedMessage(), Toast.LENGTH_LONG).show();
Log.v("Wall", "Error " + e2.getMessage());
}
}
downloadDialogA.dismiss();
}
});
他のライブラリを使用して画像をダウンロードしたくないことに注意してください。それは正常に動作します。ダイアログがフリーズしないようにしたいだけです。
前もって感謝します。