This method put in your activityclass
EDIT
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE
&& resultCode == RESULT_OK) {
selectedImagePath = (mPhotoUri.getPath());
if (selectedImagePath == null) {
return;
}
photo = (Bitmap) BitmapFactory.decodeFile(selectedImagePath);
if(adapter!=null){
adapter.btn_Image.setImageBitmap(photo);
}
}
call this method from mainactivity to adapter.. like this :
public class CertificateAdapter extends ArrayAdapter<String> {
AddCertificateActivity context;
String[] data;
int layoutResourceId;
private static final int MEDIA_TYPE_IMAGE = 1;
private Uri fileUri;
private static final int CAMERA_REQUEST_CODE=100;
public Bitmap bitmap;
public CertificateAdapter(AddCertificateActivity context,int resources, String[] data) {
super(context,resources,data);
this.context=context;
this.data=data;
this.layoutResourceId=resources;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
LayoutInflater mInflater=((Activity)context).getLayoutInflater();
convertView = mInflater.inflate(R.layout.list_row, null);
btn_Image = (ImageButton)convertView.findViewById(R.id.img_Certificate);
text=(TextView)convertView.findViewById(R.id.header);
add=(Button)convertView.findViewById(R.id.btn_Add);
convertView.setTag(holder);
}
text.setText(data[position]);
btn_Image.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent cameraIntent=new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
context.startActivityForResult(cameraIntent, CAMERA_REQUEST_CODE);
}
});
return convertView;
}
Edit:::
CertificateAdapter adapter=new CertificateAdapter(this,R.layout.list_row,data);
listView.setAdapter(adapter);