Android 调用系统相册选择图片并显示

来源:互联网 发布:优化glsl着色器 编辑:程序博客网 时间:2024/05/18 01:39

主要代码:

package wkk.app2;import android.app.Activity;import android.content.Intent;import android.database.Cursor;import android.graphics.Bitmap;import android.graphics.BitmapFactory;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 = BitmapFactory.decodeFile(imaePath);        ((ImageView)findViewById(R.id.image)).setImageBitmap(bm);    }}

xml:

<?xml version="1.0" encoding="utf-8"?><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="wkk.app2.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="wrap_content"        android:layout_height="wrap_content" /></LinearLayout>

2016/12/05 10:17
Demo下载地址:
http://download.csdn.net/detail/w18756901575/9701803

3 0
原创粉丝点击