protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if(selectCode==requestCode){ /** * 当选择的图片不为空的话,在获取到图片的途径 */ Uri uri = data.getData(); Log.i(TAG, "uri = "+ uri); try { String[] pojo = {MediaStore.Images.Media.DATA}; Cursor cursor = managedQuery(uri, pojo, null, null,null); if(cursor!=null) { ContentResolver cr = this.getContentResolver(); int colunm_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA); cursor.moveToFirst(); String path = cursor.getString(colunm_index); /*** * 这里加这样一个判断主要是为了第三方的软件选择,比如:使用第三方的文件管理器的话,你选择的文件就不一定是图片了,这样的话,我们判断文件的后缀名 * 如果是图片格式的话,那么才可以 */ if(path.endsWith("jpg")||path.endsWith("png")) { picPath = path; Bitmap bitmap = BitmapFactory.decodeStream(cr.openInputStream(uri)); imageView.setImageBitmap(bitmap); }else{alert();} }else{alert();} } catch (Exception e) { } super.onActivityResult(requestCode, resultCode, data); }
取值,并且将图片填充到imageView里。本Activty里全局变量保存picPath。
拍照上传,首先要进入照相机。