why is CATEGORY_OPENABLE used for in android -
here have written code image picker gallery, can tell me roll of setaction() , addcategory() ?
there lots of "static final string" available in intent class file, totally unaware of using these action , category parameters in program
public class imagepicker extends baseactivity implements view.onclicklistener { private final int pick_from_gallery_request = 1; private imageview pickedimage; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); super.onstart(); setcontentview(r.layout.activity_image_picker); pickedimage= (imageview) findviewbyid(r.id.image); button camerabutton= (button) findviewbyid(r.id.pick_from_camera); button gallerybutton= (button) findviewbyid(r.id.pick_from_gallery); camerabutton.setonclicklistener(this); gallerybutton.setonclicklistener(this); setviewheight(pickedimage); } private void setviewheight(imageview pickedimage) { displaymetrics displaymetrics=getresources().getdisplaymetrics(); pickedimage.getlayoutparams().height=displaymetrics.heightpixels/2; } @override protected void onactivityresult(int requestcode, int resultcode, intent data) { super.onactivityresult(requestcode, resultcode, data); if(requestcode==pick_from_gallery_request && resultcode==result_ok && data!=null){ inputstream stream = null; try { stream = getcontentresolver().openinputstream( data.getdata()); bitmap bitmap = bitmapfactory.decodestream(stream); stream.close(); pickedimage.setimagebitmap(bitmap); } catch (filenotfoundexception e) { e.printstacktrace(); } catch (ioexception e) { e.printstacktrace(); } } } @override public void onclick(view v) { switch (v.getid()){ case r.id.pick_from_gallery: intent intent = new intent(); intent.settype("image/*"); intent.setaction(intent.action_get_content); intent.addcategory(intent.category_openable); startactivityforresult(intent, pick_from_gallery_request); break; case r.id.pick_from_camera: break; } }
Comments
Post a Comment