首页 > 代码库 > 调用系统相册

调用系统相册

 

import android.app.Activity;import android.content.Intent;import android.database.Cursor;import android.graphics.Bitmap;import android.net.Uri;import android.os.Bundle;import android.provider.MediaStore;import android.support.v7.app.AppCompatActivity;import android.view.View;import android.widget.ImageView;public class MainActivity extends AppCompatActivity {    //调用系统相册-选择图片    private static final int IMAGE = 1;    //所需权限//    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);    }    public void onClick(View v) {        //调用相册        Intent intent = new Intent(Intent.ACTION_PICK,                android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);        startActivityForResult(intent, IMAGE);    }    @Override    protected void onActivityResult(int requestCode, int resultCode, Intent data) {        super.onActivityResult(requestCode, resultCode, data);        //获取图片路径        if (requestCode == IMAGE && resultCode == Activity.RESULT_OK && data != null) {            Uri selectedImage = data.getData();            String[] filePathColumns = {MediaStore.Images.Media.DATA};            Cursor c = getContentResolver().query(selectedImage, filePathColumns, null, null, null);            c.moveToFirst();            int columnIndex = c.getColumnIndex(filePathColumns[0]);            String imagePath = c.getString(columnIndex);            showImage(imagePath);            c.close();        }    }    //加载图片    private void showImage(String imaePath) {        Bitmap bm = BitmapUtils.getBitmap(imaePath, 400, 400);//        Bitmap bm = BitmapFactory.decodeFile(imaePath);        ((ImageView) findViewById(R.id.image)).setImageBitmap(bm);    }}
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="vertical"    tools:context="de.hdodenhof.photo.MainActivity">    <Button        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:onClick="onClick"        android:text="点击选择图片" />    <ImageView        android:id="@+id/image"        android:layout_width="250dp"        android:layout_height="250dp" /></LinearLayout>

 

调用系统相册