-
為了解決“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
提交
取消