分类:C#、Android、VS2015;

创建日期:2016-02-23

一、简介

该示例演示如何从图库(Gallery)中读取图像并用ImageView将它显示出来。

二、示例—ch1203ReadGallery

运行本示例前,需要先利用相机模拟拍摄一些图片到图库中。

1、运行截图

【Android】12.4 利用Intent读取图库中的图片-LMLPHP   【Android】12.4 利用Intent读取图库中的图片-LMLPHP

2、主要设计步骤

(1)添加ch1203_ReadGallery.axml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<Button
android:id="@+id/btn1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="30dp"
android:layout_gravity="center"
android:text="从图库中挑选一幅图片" />
<TextView
android:text="你挑选的图片为:"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textView1"
android:layout_gravity="center"
android:layout_margin="30dp" />
<ImageView
android:id="@+id/myImageView"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>

(2)添加ch1203ReadGallery.cs

using Android.App;
using Android.Content;
using Android.OS;
using Android.Runtime;
using Android.Widget; namespace MyDemos.SrcDemos
{
[Activity(Label = "【例12-3】读取图库图片")]
public class ch1203ReadGallery : Activity
{
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
SetContentView(Resource.Layout.ch1203_ReadGallery);
var btn1 = FindViewById<Button>(Resource.Id.btn1);
btn1.Click += delegate {
var imageIntent = new Intent();
imageIntent.SetType("image/*");
imageIntent.SetAction(Intent.ActionGetContent);
StartActivityForResult( Intent.CreateChooser(imageIntent, "选择的图片:"), 0);
};
} protected override void OnActivityResult(int requestCode, [GeneratedEnum] Result resultCode, Intent data)
{
base.OnActivityResult(requestCode, resultCode, data);
if (resultCode == Result.Ok)
{
var imageView = FindViewById<ImageView>(Resource.Id.myImageView);
imageView.SetImageURI(data.Data);
}
}
}
}

运行。

05-06 20:30