单击图像并使用 Instagram 等操作打开缩放布局
Click on Image and Open Zoomed Layout with actions like Instagram
我正在尝试像在 Instagram 中那样实现长按图像预览。
我的应用程序有一个包含图像的目录,当我点击任何图像时,它的预览应该出现并在发布后关闭,就像在 Instagram 中一样,同时检查帖子的网格(你可以有一个带有评论和心脏的缩放项目布局选项).
勾选 Image 1 : 那就是列表。
检查 Image 2 : 这就是我想要的点击列表项。
我尝试通过 Enlarge a view using a zoom animation 实现同样的效果,但它适用于图像而不是整个项目布局。
public void show(Context context, ImageView source) {
BitmapDrawable background = ImagePreviewerUtils.getBlurredScreenDrawable(context, source.getRootView());
View dialogView = LayoutInflater.from(context).inflate(R.layout.view_image_previewer, null);
ImageView imageView = (ImageView) dialogView.findViewById(R.id.previewer_image);
Drawable copy = source.getDrawable().getConstantState().newDrawable();
imageView.setImageDrawable(copy);
final Dialog dialog = new Dialog(context, R.style.ImagePreviewerTheme);
dialog.getWindow().setBackgroundDrawable(background);
dialog.setContentView(dialogView);//You can set your custem view here
dialog.show();
source.setOnTouchListener(new View.OnTouchListener() {
@Override public boolean onTouch(View v, MotionEvent event) {
if (dialog.isShowing()) {
v.getParent().requestDisallowInterceptTouchEvent(true);
int action = event.getActionMasked();
if (action == MotionEvent.ACTION_UP || action == MotionEvent.ACTION_CANCEL) {
v.getParent().requestDisallowInterceptTouchEvent(false);
dialog.dismiss();
return true;
}
}
return false;
}
});
}
Note: Modify dialog contentview (layout) as per your need
使用透明对话框主题的缩放布局Zoom Layout
我正在尝试像在 Instagram 中那样实现长按图像预览。
我的应用程序有一个包含图像的目录,当我点击任何图像时,它的预览应该出现并在发布后关闭,就像在 Instagram 中一样,同时检查帖子的网格(你可以有一个带有评论和心脏的缩放项目布局选项).
勾选 Image 1 : 那就是列表。
检查 Image 2 : 这就是我想要的点击列表项。
我尝试通过 Enlarge a view using a zoom animation 实现同样的效果,但它适用于图像而不是整个项目布局。
public void show(Context context, ImageView source) {
BitmapDrawable background = ImagePreviewerUtils.getBlurredScreenDrawable(context, source.getRootView());
View dialogView = LayoutInflater.from(context).inflate(R.layout.view_image_previewer, null);
ImageView imageView = (ImageView) dialogView.findViewById(R.id.previewer_image);
Drawable copy = source.getDrawable().getConstantState().newDrawable();
imageView.setImageDrawable(copy);
final Dialog dialog = new Dialog(context, R.style.ImagePreviewerTheme);
dialog.getWindow().setBackgroundDrawable(background);
dialog.setContentView(dialogView);//You can set your custem view here
dialog.show();
source.setOnTouchListener(new View.OnTouchListener() {
@Override public boolean onTouch(View v, MotionEvent event) {
if (dialog.isShowing()) {
v.getParent().requestDisallowInterceptTouchEvent(true);
int action = event.getActionMasked();
if (action == MotionEvent.ACTION_UP || action == MotionEvent.ACTION_CANCEL) {
v.getParent().requestDisallowInterceptTouchEvent(false);
dialog.dismiss();
return true;
}
}
return false;
}
});
}
Note: Modify dialog contentview (layout) as per your need
使用透明对话框主题的缩放布局Zoom Layout