-
為了解決“onActivityResult里面獲取回來(lái)的是圖片實(shí)際上是縮略圖”的問(wèn)題,設(shè)置拍照文件存儲(chǔ)路徑,然后從自己存儲(chǔ)的路徑來(lái)取得照片。注意:Uri是android.net而不是Java.net mFilePath = Environment.getExternalStorageDirectory().getPath();//獲取系統(tǒng)SD卡路徑 mFilePath = mFilePath + "/"+"temp.png"; //mFilePath為SD卡路徑+我們自定義的文件名 Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); Uri uri = Uri.fromFile(new File(pathFile)); //將Uri指向創(chuàng)建的文件對(duì)象 intent.putExtra(MediaStore.EXTRA_OUTPUT,uri); //更改拍照文件存儲(chǔ)路徑 startActivityForResult(intent, CAREMA_REQUEST_CODE_2); 在onActivityResult中添加 if (requestCode == CAMERA_REQUEST_CODE){ *** }else if(requestCode == CAMERA_REQUEST_CODE_2){ //從自己存儲(chǔ)的路徑來(lái)取得照片 FileInputStream files = new FileInputStream(mFilePath); Bitmap bitmap = BitmapFactory.decodeStream(files); //通過(guò)BitmapFactory.decodeStream方法將文件輸入流解析成Bitmap mImageView.setImageBitmap(bitmap); } 注意: 1)關(guān)閉流對(duì)象 files.close(); 2)文件操作基本都需要捕獲異常 3)增加SD卡讀寫(xiě)權(quán)限查看全部
-
調(diào)用系統(tǒng)相機(jī),獲取拍攝圖片顯示在imageView中 1)使用startActivityForResult() 2)覆寫(xiě)onActivityResult函數(shù),處理返回來(lái)的數(shù)據(jù) @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();//取出相機(jī)返回的所有信息,即圖片的二進(jìn)制流 Bitmap bitmap = (Bitmap) bundle.get("data"); //轉(zhuǎn)換成bitmap mImageView.setImageBitmap(bitmap); } } } 注意:onActivityResult里面獲取回來(lái)的是圖片實(shí)際上是縮略圖查看全部
-
如何使得自己的app作為一個(gè)相機(jī)應(yīng)用: 在自己應(yīng)用的清單文件中,可以選擇性地找一個(gè)activity根節(jié)點(diǎn),然后添加相應(yīng)的意圖過(guò)濾器.意圖過(guò)濾器如下: <intent-filter> <action android:name="android.media.action.IMAGE_CAPTURE" ></action> <category android:name="android.intent.category.DEAFULT"></category> </intent-filter> 記住:這里的分類(lèi)<category android:name="android.intent.category.DEAFULT"></category>一定要寫(xiě)上,不然功能實(shí)現(xiàn)不出來(lái) 可以讓其他應(yīng)用調(diào)用相機(jī)時(shí),可選擇它。查看全部
-
隱式intent調(diào)用系統(tǒng)中具有相機(jī)拍照功能的應(yīng)用去拍照,new intent(MediaStore.ACTION_IMAGE_CAPTURE);查看全部
-
相機(jī)的使用 系統(tǒng) 自定義相機(jī)查看全部
-
添加button及imageView查看全部
-
內(nèi)容如圖查看全部
-
通過(guò)intent.putExtra()方法將圖片存儲(chǔ)到指定的文件路徑下: intent.putExtra(MediaStore.EXTRA_OUTPUT,photoUri);查看全部
-
如果想獲取相機(jī)拍照后的原圖的話(huà),最好就讓相機(jī)把拍好的照片存儲(chǔ)到一個(gè)路徑下查看全部
-
注意:現(xiàn)在的手機(jī)相機(jī)拍出來(lái)的照片存儲(chǔ)大小一般都很大,所以如果通過(guò)Intent傳遞這些相片的話(huà),很可能造成OOM,也就是內(nèi)存溢出.直接通過(guò)Intent獲取的照片只能是縮略圖,不是原圖.查看全部
-
如何使得自己的app具有相機(jī)里的拍照功能: 在自己應(yīng)用的清單文件中,可以選擇性地找一個(gè)activity根節(jié)點(diǎn),然后添加相應(yīng)的意圖過(guò)濾器.意圖過(guò)濾器如下: <intent-filter> <action android:name="android.media.action.IMAGE_CAPTURE" ></action> <category android:name="android.intent.category.DEAFULT"></category> </intent-filter> 記住:這里的分類(lèi)<category android:name="android.intent.category.DEAFULT"></category>一定要寫(xiě)上,不然功能實(shí)現(xiàn)不出來(lái)查看全部
-
在安卓app中使用Camera相機(jī)有兩種方式: 1.調(diào)用系統(tǒng)相機(jī),或者是具有相機(jī)功能的應(yīng)用 2.自定義相機(jī)查看全部
-
調(diào)用系統(tǒng)相機(jī)、所用Action :MediaStore.ACTION_IMAGE_CAPTURE查看全部
-
new intent(MediaStore.ACTION_IMAGE_CAPTURE);添加相機(jī)查看全部
-
mark查看全部
舉報(bào)
0/150
提交
取消