欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android中从图库中选取图片实例详解

程序员文章站 2024-02-16 20:00:01
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控件中咯

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!