美文网首页
android 大图预览

android 大图预览

作者: 心中有梦丶身边有你 | 来源:发表于2019-09-26 15:06 被阅读0次

导入moudle ,

 implementation 'com.ycjiang:imgepreviewlibrary:1.1.3'

然后在图片点击事件添加以下代码

  Intent intent = new Intent(WXJiLuDetailActivity.this, EnlargeImageDetailActivity.class);
                    intent.putExtra(CommonUtils.SpaceImageDetail.IMAGEURL, HttpConfig.IMG_URL + "/" + imglist.get(position));//传入 图片的URL

                    int[] location = new int[2];
                    view.getLocationOnScreen(location);//view 就是所点击的ImageView
                    intent.putExtra(CommonUtils.SpaceImageDetail.LOCATIONX, location[0]);
                    intent.putExtra(CommonUtils.SpaceImageDetail.LOCATIONY, location[1]);

                    intent.putExtra(CommonUtils.SpaceImageDetail.WIDTH, view.getWidth());
                    intent.putExtra(CommonUtils.SpaceImageDetail.HEIGHT, view.getHeight());
                    startActivity(intent);
                    overridePendingTransition(0, 0);
package com.luchongbin.enlarge.myenlarge;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView.ScaleType;

import com.bumptech.glide.Glide;
/**
 * Created by luchongbin on 2018/11/5/005.
 */
public class EnlargeImageDetailActivity extends Activity implements View.OnClickListener, EnlargeImageView.TransformListener {
    private EnlargeImageView imageView = null;
    private String imageUrl;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Intent mIntent = getIntent();
        imageUrl = mIntent.getStringExtra(CommonUtils.SpaceImageDetail.IMAGEURL);
        int mLocationX = mIntent.getIntExtra(CommonUtils.SpaceImageDetail.LOCATIONX, 0);
        int mLocationY = mIntent.getIntExtra(CommonUtils.SpaceImageDetail.LOCATIONY, 0);
        int mWidth = mIntent.getIntExtra(CommonUtils.SpaceImageDetail.WIDTH, 0);
        int mHeight = mIntent.getIntExtra(CommonUtils.SpaceImageDetail.HEIGHT, 0);

        imageView = new EnlargeImageView(this);
        imageView.setOriginalInfo(mWidth, mHeight, mLocationX, mLocationY);
        imageView.transformIn();
        imageView.setLayoutParams(new ViewGroup.LayoutParams(-1, -1));
        imageView.setScaleType(ScaleType.FIT_CENTER);
        setContentView(imageView);
        initData(imageUrl);
        setListener();


    }
    private void initData(String imageUrl){
        Glide.with(this)
                .load(imageUrl)
                .into(imageView);

    }
    private void setListener(){
        imageView.setOnClickListener(this);
    }
    @Override
    public void onClick(View view) {
        if(view.getId()==imageView.getId()){
            onBackPressed();
        }
    }


    @Override
    public void onTransformComplete(int mode) {
        if (mode == 2) {
            finish();
        }
    }

    @Override
    public void onBackPressed() {
        imageView.setOnTransformListener(this);
        imageView.transformOut();
    }

    @Override
    protected void onPause() {
        super.onPause();
        if (isFinishing()) {
            overridePendingTransition(0, 0);
        }
    }
}

public class CommonUtils {
    public static class SpaceImageDetail{
        public static final String IMAGEURL = "imageUrl";
        public static final String LOCATIONX = "locationX";
        public static final String LOCATIONY = "locationY";
        public static final String WIDTH = "width";
        public static final String HEIGHT = "height";
    }

相关文章

网友评论

      本文标题:android 大图预览

      本文链接:https://www.haomeiwen.com/subject/dydiyctx.html