2012-07-19 2 views
12

Image Gridview가 있고 갤러리에서 선택하는 gridview 또는 카메라에서 캡처 한 이미지에서 을 하나씩에 추가하고 싶습니다.갤러리에서 선택했거나 카메라에서 캡처 한 방금 이미지로 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

넣고 이미지 [이미지] 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; 

} 

}

관련 문제