这是我的Universal Image Loader工作正常。它下载图像然后显示它,但您可以看到默认图像和下载图像之间的变化。我想加载要在前一个活动中加载的图像并直接在这个活动中显示它,而不会发生我可以看到的更改。如何实现这一点以及如何在单击按钮时下载并显示新图片?我使用旋转,因为我得到一个纵向视图,设备以横向显示它。我可以根据它们的方式以纵向/横向自动显示它们吗?
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_after_login);
// UNIVERSAL IMAGE LOADER SETUP
DisplayImageOptions defaultOptions = new DisplayImageOptions.Builder()
.cacheOnDisc(true).cacheInMemory(true)
.imageScaleType(ImageScaleType.EXACTLY)
.displayer(new FadeInBitmapDisplayer(300)).build();
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(
getApplicationContext())
.defaultDisplayImageOptions(defaultOptions)
.memoryCache(new WeakMemoryCache())
.discCacheSize(100 * 1024 * 1024).build();
ImageLoader.getInstance().init(config);
// END - UNIVERSAL IMAGE LOADER SETUP
//your image url
String url = "imageUrl";
ImageLoader imageLoader = ImageLoader.getInstance();
DisplayImageOptions options = new DisplayImageOptions.Builder().cacheInMemory(true)
.cacheOnDisc(true).resetViewBeforeLoading(true)
.showImageForEmptyUri(R.drawable.defaultimage)
.showImageOnFail(R.drawable.defaultimage)
.showImageOnLoading(R.drawable.defaultimage).build();
//initialize image view
ImageView imageView = (ImageView) findViewById(R.id.imageFromServer);
imageView.setRotation(270);
//download and display image from url
imageLoader.displayImage(url, imageView, options);
}
答案 0 :(得分:0)
您可以下载上一个活动中的图像并将其写入磁盘上的文件。然后将该文件的名称(或使用固定名称)传递给此活动并从磁盘加载它。相当简单,你只需要确保在下载完成之前不要开始活动 - 否则你会看到延迟。