Android 自定义小图查看大图

Android 自定义小图查看大图有许多来自一线的技术大牛 也有在小厂或外包公司奋斗的码农 我们致力打造一个平等 高质量的 Android 交流圈子 不一定能短期就让每个人的技术突飞猛进 但从长远来说 眼光 格局 长远发展的方向才是最重

大家好,欢迎来到IT知识分享网。

e.printStackTrace();

return false;

}

}

}

3、ImageAdapter.java

public class ImageAdapter extends PagerAdapter {

public static final String TAG = ImageAdapter.class.getSimpleName();

private List imageUrls;

private Activity activity;

public ImageAdapter(List imageUrls, Activity activity) {

this.imageUrls = imageUrls;

this.activity = activity;

}

@Override

public Object instantiateItem(ViewGroup container, int position) {

String url = imageUrls.get(position);

PhotoView photoView = new PhotoView(activity);

photoView.setScaleType(ImageView.ScaleType.FIT_CENTER);

Glide.with(activity)

.load(url)

.into(photoView);

container.addView(photoView);

return photoView;

}

@Override

public int getCount() {

return imageUrls != null ? imageUrls.size() : 0;

}

@Override

public boolean isViewFromObject(View view, Object object) {

return view == object;

}

@Override

public void destroyItem(ViewGroup container, int position, Object object) {

container.removeView((View) object);

}

@Override

public int getItemPosition(Object object) {

return POSITION_NONE;

}

}

4、ImageActivity.java

public class ImageActivity extends BaseActivity {

private int position;

private List list;

@BindView(R.id.tvTitle)

public TextView tvTitle;

@BindView(R.id.vpGallery)

public PhotoViewPager mPhoto;

@BindView(R.id.img_dismess)

public ImageView mImgDismess;

private String title;

public static Intent newIntent(Context context, int position, List list) {

Intent intent = new Intent(context, ImageActivity.class);

intent.putExtra(“position”, position);

intent.putExtra(“IMG_LIST”, (Serializable) list);

return intent;

}

@Override

protected void onCreate(@Nullable Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_image);

ButterKnife.bind(this);

position = getIntent().getIntExtra(“position”, 0);

list = getIntent().getStringArrayListExtra(“IMG_LIST”);

initView();

}

public void initView() {

title = “%1 d / d/%2 d/d”;

mImgDismess.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

ImageActivity.this.finish();

}

});

tvTitle.setText(String.format(title, position + 1, list.size()));

mPhoto.setAdapter(new ImageAdapter(list, ImageActivity.this));

mPhoto.setCurrentItem(position);

mPhoto.addOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() {

@Override

public void onPageSelected(int pos) {

super.onPageSelected(pos);

position = pos;

tvTitle.setText(String.format(title, position + 1, list.size()));

}

});

}

@Override

protected void onDestroy() {

super.onDestroy();

if (list != null) {

list.clear();

}

}

}

5、AndroidManifest.xml配置activity

6、具体如何使用

在图片列表那个界面

Android 自定义小图查看大图

更多学习和讨论,欢迎加入我们!

有许多来自一线的技术大牛,也有在小厂或外包公司奋斗的码农,我们致力打造一个平等,高质量的Android交流圈子,不一定能短期就让每个人的技术突飞猛进,但从长远来说,眼光,格局,长远发展的方向才是最重要的。

这里有2000+小伙伴,让你的学习不寂寞~·

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

是最重要的。

这里有2000+小伙伴,让你的学习不寂寞~·

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/157997.html

(0)
上一篇 2025-01-26 21:00
下一篇 2025-01-26 21:05

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信