我有一个显示图像和文本列表的RecyclerView,但我想要的是当我点击图像保存到图库的任何图像时。
以下是保存图像的方法,但我无法将其连接到RecyclerView以检测要保存的每个图像。
3
这是我的FirebaseRecyclerView。
public void SaveImage(){
imagePost.buildDrawingCache();
Bitmap bmp = imagePost.getDrawingCache();
File storageLoc = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES); //context.getExternalFilesDir(null);
File file = new File(storageLoc, "Pixsar" + ".jpg");
try{
FileOutputStream fos = new FileOutputStream(file);
bmp.compress(Bitmap.CompressFormat.JPEG, 100, fos);
fos.close();
scanFile(getApplicationContext(), Uri.fromFile(file));
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
Toast.makeText(getApplicationContext(),"Image Saved to gallery ",Toast.LENGTH_LONG).show();
}
//noinspection SimplifiableIfStatement
private static void scanFile(Context context, Uri imageUri){
Intent scanIntent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
scanIntent.setData(imageUri);
context.sendBroadcast(scanIntent);
}
这是My ViewHolder Class
FirebaseRecyclerAdapter<Posts, BlogViewHolder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<Posts, BlogViewHolder>(Posts.class,
R.layout.item_activity,
BlogViewHolder.class,
mDatabase) {
@Override
protected void populateViewHolder(BlogViewHolder viewHolder, final Posts model, final int position) {
final String key_post = getRef(position).getKey();
viewHolder.setTitle(model.getEventTitle());
viewHolder.setDesc(model.getEventDescription());
viewHolder.setImage(c, model.getEventImage());
final String key_post_image = getRef(position).getKey();
}
};
所以我希望在RecyclerView中public static class BlogViewHolder extends RecyclerView.ViewHolder{
View mView;
private ImageView imagePost;
private ImageView save_image_blog;
public BlogViewHolder(View itemView) {
super(itemView);
mView=itemView;
imagePost =(ImageView)mView.findViewById(R.id.post_image);
save_image_blog =(ImageView)mView.findViewById(R.id.save_image_blog);
}
中加载的图像保存在图库中。
如何将该SavingImage方法附加到imagePost ImageView
imagePost