Android image full screen viewer
我是 android 的新手。当点击它时,将 imageview 弹出到全屏(启用捏缩放)的最简单方法是什么,就像 whatsapp 图像一样?我正在通过 Glide 在回收站视图中加载我的图像。感谢您的宝贵时间和回复。
有一个名为 StfalconImageViewer 的库。它支持开箱即用的图像打开和关闭、捏合缩放和滑动关闭手势的过渡动画。使用 Glide 会这样完成:
1 2 3 4 5 6 | new StfalconImageViewer.Builder<>(context, images, new ImageLoader<String>() { @Override public void loadImage(ImageView imageView, String imageUrl) { Glide.with(context).load(imageUrl).into(imageView) } }).show(); |
希望这会有所帮助!
我使用了 PhotoView (https://github.com/chrisbanes/PhotoView) 和 Glide (https://github.com/bumptech/glide)。
我首先创建了全屏活动并将 PhotoView 放入布局中。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#000000" tools:context=".PhotoviewerActivity"> <com.github.chrisbanes.photoview.PhotoView android:id="@+id/fullscreen_content" android:layout_width="match_parent" android:layout_height="match_parent" /> </FrameLayout> |
然后,我将要显示的图像 URL 传递给全屏活动并使用 Glide 加载图像,如下所示。
1 2 | val imageUrl = intent.getStringExtra(IMAGE_URL) Glide.with(applicationContext).load(imageUrl).into(fullscreen_content) |
您可以从全屏布局中删除所有不需要的代码,也可以从全屏活动代码中禁用。
这些代码是用 Kotlin 编写的。
您可以使用比例类型为
要缩放图像,您可以使用第三个库,例如这个库或自己编写一个类(参见此处)
这是我使用 glide 的单个图像的工作代码最后我发现了类似于 WhatsApp 的东西。我在互联网上挖掘了三天,现在我找到了解决方案。
1 2 3 4 5 6 7 8 | new StfalconImageViewer.Builder<String>(context, new ArrayList<>(Arrays.asList(messageModel.get(position).getUrl().trim())), new ImageLoader<String>() { @Override public void loadImage(ImageView imageView, String image) { Glide.with(context) .load(image) .into(imageView); } }).show(); |