-
为了解决“onActivityResult里面获取回来的是图片实际上是缩略图”的问题,设置拍照文件存储路径,然后从自己存储的路径来取得照片。注意:Uri是android.net而不是Java.net mFilePath = Environment.getExternalStorageDirectory().getPath();//获取系统SD卡路径 mFilePath = mFilePath + "/"+"temp.png"; //mFilePath为SD卡路径+我们自定义的文件名 Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); Uri uri = Uri.fromFile(new File(pathFile)); //将Uri指向创建的文件对象 intent.putExtra(MediaStore.EXTRA_OUTPUT,uri); //更改拍照文件存储路径 startActivityForResult(intent, CAREMA_REQUEST_CODE_2); 在onActivityResult中添加 if (requestCode == CAMERA_REQUEST_CODE){ *** }else if(requestCode == CAMERA_REQUEST_CODE_2){ //从自己存储的路径来取得照片 FileInputStream files = new FileInputStream(mFilePath); Bitmap bitmap = BitmapFactory.decodeStream(files); //通过BitmapFactory.decodeStream方法将文件输入流解析成Bitmap mImageView.setImageBitmap(bitmap); } 注意: 1)关闭流对象 files.close(); 2)文件操作基本都需要捕获异常 3)增加SD卡读写权限查看全部
-
调用系统相机,获取拍摄图片显示在imageView中 1)使用startActivityForResult() 2)覆写onActivityResult函数,处理返回来的数据 @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (resultCode == RESULT_OK){ if (requestCode == CAMERA_REQUEST_CODE){ Bundle bundle = data.getExtras();//取出相机返回的所有信息,即图片的二进制流 Bitmap bitmap = (Bitmap) bundle.get("data"); //转换成bitmap mImageView.setImageBitmap(bitmap); } } } 注意:onActivityResult里面获取回来的是图片实际上是缩略图查看全部
-
如何使得自己的app作为一个相机应用: 在自己应用的清单文件中,可以选择性地找一个activity根节点,然后添加相应的意图过滤器.意图过滤器如下: <intent-filter> <action android:name="android.media.action.IMAGE_CAPTURE" ></action> <category android:name="android.intent.category.DEAFULT"></category> </intent-filter> 记住:这里的分类<category android:name="android.intent.category.DEAFULT"></category>一定要写上,不然功能实现不出来 可以让其他应用调用相机时,可选择它。查看全部
-
隐式intent调用系统中具有相机拍照功能的应用去拍照,new intent(MediaStore.ACTION_IMAGE_CAPTURE);查看全部
-
相机的使用 系统 自定义相机查看全部
-
添加button及imageView查看全部
-
内容如图查看全部
-
通过intent.putExtra()方法将图片存储到指定的文件路径下: intent.putExtra(MediaStore.EXTRA_OUTPUT,photoUri);查看全部
-
如果想获取相机拍照后的原图的话,最好就让相机把拍好的照片存储到一个路径下查看全部
-
注意:现在的手机相机拍出来的照片存储大小一般都很大,所以如果通过Intent传递这些相片的话,很可能造成OOM,也就是内存溢出.直接通过Intent获取的照片只能是缩略图,不是原图.查看全部
-
如何使得自己的app具有相机里的拍照功能: 在自己应用的清单文件中,可以选择性地找一个activity根节点,然后添加相应的意图过滤器.意图过滤器如下: <intent-filter> <action android:name="android.media.action.IMAGE_CAPTURE" ></action> <category android:name="android.intent.category.DEAFULT"></category> </intent-filter> 记住:这里的分类<category android:name="android.intent.category.DEAFULT"></category>一定要写上,不然功能实现不出来查看全部
-
在安卓app中使用Camera相机有两种方式: 1.调用系统相机,或者是具有相机功能的应用 2.自定义相机查看全部
-
调用系统相机、所用Action :MediaStore.ACTION_IMAGE_CAPTURE查看全部
-
new intent(MediaStore.ACTION_IMAGE_CAPTURE);添加相机查看全部
-
mark查看全部
举报
0/150
提交
取消