我有Image Gridview,我想将图像 ONE by ONE 添加到gridview中,从图库中选择或从相机中捕获的图像。
答案 0 :(得分:4)
在您的情况下,您可以执行的操作始终是将图像分配给网格视图的最后一项。
点击最后一项,你可以创建一个弹出窗口,要求你把它带到你的画廊或相机。
现在,如果用户点击后退按钮或决定取消,请继续在网格视图中显示最后填充的“+”符号图像,否则,如果选择了其他任何选项,则可以通过onActivityResult().
导航到所需操作
如果结果代码是肯定的,您可以继续:
1) Delete the last item from grid view i.e, the '+' sign image
2) Appending the image either taken from camera or gallery
3) Appending the image having '+' sign itself
并始终为网格视图的最后一项添加条件,将其指向导航到图库或从相机单击的对话框。 对于其他项目,您可以继续满足您的要求。
如果有帮助,请告诉我。
由于
答案 1 :(得分:2)
我认为以下链接可以帮助您创建..
答案 2 :(得分:1)
将图像放入SD卡中的[图像]文件夹
public class ChannelImageAdapter extends BaseAdapter {
int mGalleryItemBackground;
private Context mContext;
File[] images;
File[] files;
public ChannelImageAdapter(Context c, int folderID) {
mContext = c;
File dir = new File(Environment.getExternalStorageDirectory() + "/images");
files = dir.listFiles();
images = files[folderID].listFiles();
}
public int getCount() {
return images.length;
}
public Object getItem(int position) {
return images[position].getAbsolutePath();
}
public long getItemId(int position) {
return position;
}
public String getAlbumName(int folderID) {
return files[folderID].getName();
}
public View getView(int position, View convertView, ViewGroup parent) {
ImageView imageView;
//Bitmap bm = BitmapFactory
// .decodeFile(images[position].getAbsolutePath());
if (convertView == null) {
imageView = new ImageView(mContext);
imageView.setLayoutParams(new GridView.LayoutParams(100, 100));
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
imageView.setPadding(5, 10, 5, 10);
} else {
imageView = (ImageView) convertView;
}
imageView.setImageBitmap(Bitmap.decode(images[position].getAbsoluteFile()));
return imageView;
}
}