获取可绘制文件夹下的多个图像并以网格视图显示。如何在点击后将图像存储在内存中?
在网格视图中显示它之后,当我们点击一个特定的图像时,它必须存储在设备的内部存储器中。 我实现的代码如下所示
public class Example3 extends AppCompatActivity {
String[] web = {"image1", "image2", "image3",
"image4", "image5", "image6", "image7",
"image8", "image9", "image10", "image11"};
Integer[] displayImages = {R.drawable.image1, R.drawable.image2, R.drawable.image3,
R.drawable.image4, R.drawable.image5, R.drawable.image6,
R.drawable.image7, R.drawable.image8, R.drawable.image9, R.drawable.image10, R.drawable.image11};
GridView gridView;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.example3);
gridView = (GridView) findViewById(R.id.gridView1);
gridView.setAdapter(new ImageAdapter(this));
gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) {
Toast.makeText(Example3.this, "You Clicked at " + web[+position] + " saved Successfully", Toast.LENGTH_SHORT).show();
}
});
}
private class ImageAdapter extends BaseAdapter {
Context context;
public ImageAdapter(Context context) {
this.context = context;
}
@Override
public int getCount() {
return displayImages.length;
}
@Override
public Object getItem(int position) {
return position;
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View view, ViewGroup viewGroup) {
ImageView imageView = new ImageView(this.context);
imageView.setImageResource(displayImages[position]);
imageView.setLayoutParams(new GridView.LayoutParams(180, 150));
return imageView;
}
}
}
我的问题是 - 如何存储在内存中的特定图像?
请询问具体的问题,而不是一个一般的,unprecise目标 –
你到底在期待什么,有什么问题?你应该显示你的代码,以便我们可以帮助你。 – Inconnu
下一步在设备内存中存储图像.. –