Android中从图库中选取图片实例详解
程序员文章站
2023-12-20 23:11:46
android 从图库中选取图片
在android中,如何从图库gallary中挑选图片呢,其实很简单,步骤如下
1) 设计一个imageview,用来显示...
android 从图库中选取图片
在android中,如何从图库gallary中挑选图片呢,其实很简单,步骤如下
1) 设计一个imageview,用来显示图库选出来的图片
<?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" > <imageview android:id="@+id/imgview" android:layout_width="fill_parent" android:layout_weight="1" android:layout_height="wrap_content"></imageview> <button android:layout_height="wrap_content" android:text="load picture" android:layout_width="wrap_content" android:id="@+id/buttonloadpicture" android:layout_weight="0" android:layout_gravity="center"></button> </linearlayout>
2) 学习如何在按键中调出gallary,其实也就是intent了,如下
intent i = new intent(intent.action_pick, android. provider.mediastore.images.media.external_content_uri); startactivityforresult(i, result_load_image);
3) 然后在onactivityresult中对调出图库后,选定好的图片,我们要重新显示在页面的imageview中,因此代码如下:
protected void onactivityresult(int requestcode, int resultcode, intent data) { super.onactivityresult(requestcode, resultcode, data); if (requestcode == result_load_image && resultcode == result_ok && null != data) { uri selectedimage = data.getdata(); string[] filepathcolumn = { mediastore.images.media.data }; cursor cursor = getcontentresolver().query(selectedimage, filepathcolumn, null, null, null); cursor.movetofirst(); int columnindex = cursor.getcolumnindex(filepathcolumn[0]); string picturepath = cursor.getstring(columnindex); cursor.close(); imageview imageview = (imageview) findviewbyid(r.id.imgview); imageview.setimagebitmap(bitmapfactory.decodefile(picturepath)); }
其中就是uri selectedimage = data.getdata();获得了图库中的图片所有数据了。
这样一来,当用户在图库中选好图片后,就可以呈现在imageview控件中咯
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!