【移動(dòng)應(yīng)用開發(fā)技術(shù)】使用Android怎么從相冊中選取照片_第1頁
【移動(dòng)應(yīng)用開發(fā)技術(shù)】使用Android怎么從相冊中選取照片_第2頁
【移動(dòng)應(yīng)用開發(fā)技術(shù)】使用Android怎么從相冊中選取照片_第3頁
【移動(dòng)應(yīng)用開發(fā)技術(shù)】使用Android怎么從相冊中選取照片_第4頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

【移動(dòng)應(yīng)用開發(fā)技術(shù)】使用Android怎么從相冊中選取照片

使用Android怎么從相冊中選取照片?很多新手對此不是很清楚,為了幫助大家解決這個(gè)難題,下面在下將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。(1)直接選擇相冊后返回第一步就是主要跳轉(zhuǎn)的相冊

//在這里跳轉(zhuǎn)到手機(jī)系統(tǒng)相冊里面

Intent

intent

=

new

Intent(

Intent.ACTION_PICK,

vider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);

startActivityForResult(intent,

IMAGE_REQUEST_CODE);第二步就是返回的時(shí)候獲取相冊的路徑

@Override

protected

void

onActivityResult(int

requestCode,

int

resultCode,

Intent

data)

{

super.onActivityResult(requestCode,

resultCode,

data);

//在相冊里面選擇好相片之后調(diào)回到現(xiàn)在的這個(gè)activity中

switch

(requestCode)

{

case

IMAGE_REQUEST_CODE://這里的requestCode是我自己設(shè)置的,就是確定返回到那個(gè)Activity的標(biāo)志

if

(resultCode

==

RESULT_OK)

{//resultcode是setResult里面設(shè)置的code值

try

{

Uri

selectedImage

=

data.getData();

//獲取系統(tǒng)返回的照片的Uri

String[]

filePathColumn

=

{MediaStore.Images.Media.DATA};

Cursor

cursor

=

getContentResolver().query(selectedImage,

filePathColumn,

null,

null,

null);//從系統(tǒng)表中查詢指定Uri對應(yīng)的照片

cursor.moveToFirst();

int

columnIndex

=

cursor.getColumnIndex(filePathColumn[0]);

path

=

cursor.getString(columnIndex);

//獲取照片路徑

cursor.close();

Bitmap

bitmap

=

BitmapFactory.decodeFile(path);

iv_photo.setImageBitmap(bitmap);

}

catch

(Exception

e)

{

//

TODO

Auto-generatedcatch

block

e.printStackTrace();

}

}

break;

}

}(2)選擇圖片后裁剪先上圖首先也是要調(diào)起相冊//

使用意圖直接調(diào)用手機(jī)相冊

Intent

intent

=

new

Intent(

Intent.ACTION_PICK,

vider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);

//

打開手機(jī)相冊,設(shè)置請求碼

startActivityForResult(intent,

IMAGE_REQUEST_CODE);然后這里增加了一步就是用戶選擇了相冊之后然后再增加裁剪功能

@Override

protected

void

onActivityResult(int

requestCode,

int

resultCode,

Intent

data)

{

if

(resultCode

!=

RESULT_OK)

{

return;

}

else

{

switch

(requestCode)

{

case

IMAGE_REQUEST_CODE:

resizeImage(data.getData());

break;

case

RESIZE_REQUEST_CODE:

if

(data

!=

null)

{

showResizeImage(data);

}

break;

}

}

super.onActivityResult(requestCode,

resultCode,

data);

}

//這里增加裁剪

public

void

resizeImage(Uri

uri)

{

Intent

intent

=

new

Intent("com.android.camera.action.CROP");

intent.setDataAndType(uri,

"image/*");

intent.putExtra("crop",

"true");

intent.putExtra("aspectX",

1);

intent.putExtra("aspectY",

1);

//裁剪的大小

intent.putExtra("outputX",

150);

intent.putExtra("outputY",

150);

intent.putExtra("return-data",

true);

//設(shè)置返回碼

startActivityForResult(intent,

RESIZE_REQUEST_CODE);

}

private

void

showResizeImage(Intent

data)

{

Bundle

extras

=

data.getExtras();

if

(extras

!=

null)

{

Bitmap

photo

=

extras.getParcelable("data");

//裁剪之后設(shè)置保存圖片的路徑

String

path

=

getFilesDir().getPath()

+

File.separator

+

IMAGE_FILE_NAME;

//壓縮圖片

ImageUtils.s

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論