没有合适的资源?快使用搜索试试~ 我知道了~
首页Android用RecyclerView实现动态添加本地图片
Android用RecyclerView实现动态添加本地图片
1.1k 浏览量
更新于2023-05-27
评论 1
收藏 61KB PDF 举报
本篇文章主要介绍了Android用RecyclerView实现动态添加本地图片,具有一定的参考价值,有兴趣的可以了解一下
资源详情
资源评论
资源推荐

Android用用RecyclerView实现动态添加本地图片实现动态添加本地图片
本篇文章主要介绍了Android用RecyclerView实现动态添加本地图片,具有一定的参考价值,有兴趣的可以了解
一下
本文介绍了Android用RecyclerView实现动态添加本地图片,分享给大家,具体如下:
本文所用的多图选择的library来自:https://github.com/lovetuzitong/MultiImageSelector
简单介绍一下用法:
1、跳转到图片选择页面:
Intent intent = new Intent(PassengerSetActivity.this, MultiImageSelectorActivity.class);
intent.putExtra(MultiImageSelectorActivity.EXTRA_SHOW_CAMERA, true);
intent.putExtra(MultiImageSelectorActivity.EXTRA_SELECT_COUNT, 9);
intent.putExtra(MultiImageSelectorActivity.EXTRA_SELECT_MODE, MultiImageSelectorActivity.MODE_SINGLE);
startActivityForResult(intent, 10001);//10001-->添加
2、通过onActivityResult获取信息:
final ArrayList<String> paths = data.getStringArrayListExtra(MultiImageSelectorActivity.EXTRA_RESULT);
Bitmap bitmap = BitmapFactory.decodeFile(paths.get(0), DIY_dialog.getBitmapOption(4));
首先设置布局管理器为:
recyclerview.setLayoutManager(new GridLayoutManager(this, 3));
然后设置适配器(这里在代码里面有详细的注释):
public class PassengerAdapter extends RecyclerView.Adapter<PassengerAdapter.ViewHolder> {
private Context mContext;
private OnItemClickLitener listener;//点击事件接口
private ArrayList<String> imageUrls;
private ImageFetcher imageFetcher;
private ViewHolder viewHolder;
private View view;
/**
* 在构造方法中传入图片地址的数据
* @param context
* @param imageUrls
*/
public PassengerAdapter(Context context, ArrayList<String> imageUrls) {
this.mContext = context;
this.imageUrls = imageUrls;
//初始化加载网络图片的jar包
imageFetcher = new ImageFetcher(context);
imageFetcher.setImageCache(ImageCache.getInstance(context));
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
view = LayoutInflater.from(mContext).inflate(R.layout.lay_passager, null);
viewHolder = new ViewHolder(view);
return viewHolder;
}
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
//设置内容为“hehe”的的元素为默认的添加按钮
if (imageUrls.get(position).equals("hehe")) {
holder.imageViewBig.setBackgroundResource(R.mipmap.add);
//当图片是添加按钮的时候隐藏删除按钮
holder.imageViewSmall.setVisibility(View.GONE);
} else {
holder.imageViewSmall.setVisibility(View.VISIBLE);
/**
* 判断图片路径是网络地址还是本地图片
* 设置路径之中包含“storage”的为本地图片
*/
if (imageUrls.get(position).contains("storage")) {
try {
File file = new File(imageUrls.get(position));
//将bitmap转化成drawable
Bitmap bmp = MediaStore.Images.Media.getBitmap(mContext.getContentResolver(), Uri.fromFile(file));
Drawable drawable =new BitmapDrawable(bmp);
















安全验证
文档复制为VIP权益,开通VIP直接复制

评论0