Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >android 从相册选择图片_android调用相册并显示图片

android 从相册选择图片_android调用相册并显示图片

作者头像
全栈程序员站长
发布于 2022-11-08 11:53:16
发布于 2022-11-08 11:53:16
2K0
举报

大家好,又见面了,我是你们的朋友全栈君。

public class MainActivity extendsAppCompatActivity {int REQUEST_CODE = 0;privateNineGridImageView ngiv;private ArrayListphotos;privateDialog dialog;privatecn.com.jwtimes.www.jwtimes.mAdapter mAdapter1;

@Overrideprotected voidonCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

TextView tv=findViewById(R.id.tv);

ngiv=findViewById(R.id.ngiv);

tv.setOnClickListener(newView.OnClickListener() {

@Overridepublic voidonClick(View v) {

PhotoPickerIntent intent= new PhotoPickerIntent(MainActivity.this);

intent.setPhotoCount(9);

intent.setShowCamera(true);

startActivityForResult(intent, REQUEST_CODE);

}

});

}

@Overrideprotected void onActivityResult(int requestCode, intresultCode, Intent data) {super.onActivityResult(requestCode, resultCode, data);if (resultCode == RESULT_OK && requestCode ==REQUEST_CODE) {if (data != null) {

photos=data.getStringArrayListExtra(PhotoPickerActivity.KEY_SELECTED_PHOTOS);

ngiv.setAdapter(mAdapter);

ngiv.setImagesData(photos);

}

}

}private NineGridImageViewAdapter mAdapter = new NineGridImageViewAdapter() {

@Overrideprotected void onDisplayImage(Context context, ImageView imageView, finalString url) {

Glide.with(context)

.load(url)

.into(imageView);

}

@OverrideprotectedImageView generateImageView(Context context) {return super.generateImageView(context);

}

@Overrideprotected void onItemImageClick(Context context, int index, ListphotoList) {

showBigPicture(context, photos, index);

}

};private void showBigPicture(Context context, final ArrayList photos, final intindex) {

dialog= newDialog(context, R.style.MyDialog);

View contentView= View.inflate(context, R.layout.dialog_tip, null);final ViewPager vp =(ViewPager) contentView.findViewById(R.id.vp);

ImageView ivDelete=(ImageView) contentView.findViewById(R.id.ivDelete);

mAdapter1= new mAdapter(this, photos, dialog);

vp.setAdapter(mAdapter1);

vp.setCurrentItem(index);

ivDelete.setOnClickListener(newView.OnClickListener() {

@Overridepublic voidonClick(View v) {int currentItem =vp.getCurrentItem();

Iterator sListIterator =photos.iterator();while(sListIterator.hasNext()) {

String e=sListIterator.next();if(e.equals(photos.get(currentItem))) {

sListIterator.remove();

mAdapter1.notifyDataSetChanged();break;

}

}

}

});

dialog.setOnDismissListener(newDialogInterface.OnDismissListener() {

@Overridepublic voidonDismiss(DialogInterface dialog) {

ngiv.setAdapter(MainActivity.this.mAdapter);

ngiv.setImagesData(photos);

}

});

dialog.setContentView(contentView);

dialog.setCancelable(true);

dialog.getWindow().setLayout(

getScreenWidth(),

getScreenHeight());

dialog.show();

}public intgetScreenWidth() {

Resources resources=getResources();returnresources.getDisplayMetrics().widthPixels;

}public intgetScreenHeight() {

Resources resources=getResources();returnresources.getDisplayMetrics().heightPixels;

}

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/190791.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年9月22日 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Android 选择图片、上传图片之Matisse
就目前效果图来看,好像也没什么毛病哈,其实我这个集成的过程是有点坎坷的。 而且,功能也不算是很齐全吧…主要体现在以下几个点
yechaoa
2022/06/10
1.9K0
Android 选择图片、上传图片之Matisse
textview长按复制_android-TextView的长按复制[通俗易懂]
android:text=”长按自由复制”android:textColorHighlight=”#CCCCCC”android:textIsSelectable=”true” />
全栈程序员站长
2022/11/11
1.9K0
android调用相册并显示图片_android studio制作简易相册
这是一个打开相册选择图片的故事,不涉及拍照、多图片选择,就是简单的一个单图片选择并展示(不涉及任何权限)。先上效果图
全栈程序员站长
2022/11/09
2.8K0
android调用相册并显示图片_android studio制作简易相册
Android调用相机与相册的方法
Android调用相机与相册的方法 操作流程 点击拍摄 效果图 点击相册选择 效果图 拒绝权限的情况 效果图 功能实现 项目配置 1.先在项目根目录的build.gradle的repositories添加: 2.在build.gradle(:app)的dependencies添加: 3.添加提示dialog样式 4.添加底部dialog样式 底部dialog弹出动画(dialog_in_anim.xml) 底部dialog关闭动画(dialog_out_anim.xml) 5.添加权限 6.在Android
是阿超
2022/08/07
2.1K0
Android调用相机与相册的方法
android之ListView和adapter配合显示图片和文字列表
实际效果: 布局文件: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.a
圆号本昊
2021/09/24
1.1K0
android之ListView和adapter配合显示图片和文字列表
10. 面向holder编程、自动轮询
没有看过上一篇文章的话,建议先去阅读GooglePlay:9.代码抽取(adapter) 项目框架的搭建: 以后每个view都是holder BaseHolder public abstract class BaseHolder<Data> {//写data和t一样 private View contentView; private Data data; protected BitmapUtils bitmapUtils; public BaseHolder(){ bitmapUtils
六月的雨
2018/05/14
7610
android调用相册并显示图片_Android获取相册列表
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/04
2.7K0
Android之控件与布局,结构知识点,基础完结
在Android中我们常常用到很多UI控件,如TextView,EditText,ImageView,Button,ImageButton,ToggleButton,CheckBox,RadioButton等等这些可以自己多用就会了。
达达前端
2019/07/03
1.3K0
Android之控件与布局,结构知识点,基础完结
Android任务管理器的设计实现
项目结构如图,MyToast类是自定义的Toast类,MainActivity是主要Activity类
SmileNicky
2019/01/17
1.8K0
仿朋友圈相册图片选择以及画廊效果「建议收藏」
该demo适配Android 6、7、10。画廊效果,支持缩放效果。 视频展示:
全栈程序员站长
2022/08/31
1.2K0
仿朋友圈相册图片选择以及画廊效果「建议收藏」
Android 编程之第三方开发 MaoZhuaWeiBo微博开发演示样例-1「建议收藏」
在大学期间我做过非常多类似这种APP。这个是我们小组之前做的,我后期增加非常多新元素。完好了这个应用,由于为了加强
全栈程序员站长
2022/07/07
5240
Android 编程之第三方开发 MaoZhuaWeiBo微博开发演示样例-1「建议收藏」
3.PopupWindow 、拍照、裁剪
实现这样的效果 圆角图片的自定义控件直接拷进来,和com一个等级 想要弹出内容可以使用悬浮窗 layout_pupup <LinearLayout xmlns:android="http://sche
六月的雨
2018/05/14
1.3K0
Android开发工程师文集-Fragment,适配器,轮播图,ScrollView,Gallery 图片浏览器,Android常用布局样式
ViewPager的声明:<android.support.v4.view.ViewPager> 是为了解决版本兼容性问题
达达前端
2019/07/03
1.7K0
Android 选择图片、上传图片之ImagePicker
选择图片:compile 'com.lzy.widget:imagepicker:0.5.4'
yechaoa
2022/06/10
1.4K0
Android 选择图片、上传图片之ImagePicker
相关推荐
Android 选择图片、上传图片之Matisse
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档