`
liuquanjc
  • 浏览: 61689 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

本地图片选择(打开媒体库,选择图片)

阅读更多

 

在此调查中我要实现的是:点击Pictures按钮后,获取手机内所有图片,选择某一个图片,并显示到ImageView中。

应用范围: 图片上传时的图片选择  , 类似"浏览"。

所有的图片都会列出来,包括目录。

在Activity Action里面有一个“ACTION_GET_CONTENT”字符串常量,该常量让用户选择特定类型的数据,并返回该数据的URI.我们利用该常量,然后设置类型为“image/*”,就可获得Android手机内的所有image。

 

 

main.xml :

view plaincopy to clipboardprint?
<?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" 
    > 
<TextView   
    android:layout_width="fill_parent"  
    android:layout_height="wrap_content"  
    android:text="@string/hello" 
    /> 
   <Button  
        android:id="@+id/b01" 
        android:layout_width="fill_parent"  
        android:layout_height="wrap_content"  
    /> 
    <ImageView 
        android:id="@+id/iv01" 
        android:layout_width="fill_parent"  
        android:layout_height="wrap_content"  
     /> 
</LinearLayout> 
 

 

Lesson_01_Pic.Java:

 

view plaincopy to clipboardprint?
package com.yfz; 
import java.io.FileNotFoundException; 
import android.app.Activity; 
import android.content.ContentResolver; 
import android.content.Intent; 
import android.graphics.Bitmap; 
import android.graphics.BitmapFactory; 
import android.NET.Uri; 
import android.os.Bundle; 
import android.util.Log; 
import android.view.View; 
import android.widget.Button; 
import android.widget.ImageView; 
public class Lesson_01_Pic extends Activity { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.main); 
         
        Button button = (Button)findViewById(R.id.b01); 
        button.setText("选择图片"); 
        button.setOnClickListener(new Button.OnClickListener(){ 
            @Override 
            public void onClick(View v) { 
                Intent intent = new Intent(); 
                /* 开启Pictures画面Type设定为image */ 
                intent.setType("image/*"); 
                /* 使用Intent.ACTION_GET_CONTENT这个Action */ 
                intent.setAction(Intent.ACTION_GET_CONTENT);  
                /* 取得相片后返回本画面 */ 
                startActivityForResult(intent, 1); 
            } 
             
        }); 
    } 
     
    @Override 
    protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
        if (resultCode == RESULT_OK) { 
            Uri uri = data.getData(); 
            Log.e("uri", uri.toString()); 
            ContentResolver cr = this.getContentResolver(); 
            try { 
                Bitmap bitmap = BitmapFactory.decodeStream(cr.openInputStream(uri)); 
                ImageView imageView = (ImageView) findViewById(R.id.iv01); 
                /* 将Bitmap设定到ImageView */ 
                imageView.setImageBitmap(bitmap); 
            } catch (FileNotFoundException e) { 
                Log.e("Exception", e.getMessage(),e); 
            } 
        } 
        super.onActivityResult(requestCode, resultCode, data); 
    } 
}

分享到:
评论

相关推荐

    android 选择本地视频和图片,支持异步加载显示

    在Android开发中,有时我们需要为用户提供选择本地视频和图片的功能,以便他们可以在应用中上传或展示个人的内容。本文将深入探讨如何实现这一功能,重点包括文件夹选择模式、文件选择模式以及异步加载和显示的技术...

    WPF打开图片文件放入image中

    在探讨如何在WPF(Windows Presentation Foundation)应用中打开并显示图片到`Image`控件的过程中,我们将深入解析代码逻辑、关键类库的使用以及一些最佳实践,这将对WPF初学者尤其有益。 ### WPF与图片处理 WPF...

    Kotlin RecyclerView使用,浏览相册、选择图片上传,下载文件,文件选择器

    总的来说,这个项目覆盖了Android开发中的多个关键知识点,包括但不限于:Kotlin语言特性、`RecyclerView`的使用、媒体库的访问、文件系统的操作、网络请求以及用户交互设计。通过实践这些功能,开发者不仅可以提升...

    调用本地相册 和 本地图片的 Demo

    3. **访问媒体库** 要读取选定图片的内容,可以使用`ContentResolver`和`Cursor`。例如: ```java ContentResolver resolver = getContentResolver(); try { Cursor cursor = resolver.query(selectedImage, ...

    拍照或者本地选取图片

    6. **本地图片选取**: - Android:使用`Intent.ACTION_PICK`,设置`Intent.setType("image/*")`来启动图库应用,选择图片后,系统会返回一个选择图片的`Uri`。 - iOS:同样使用`UIImagePickerController`,但设置...

    选择本地图片和照相

    这段代码会打开用户的媒体库,让用户选择一张图片。`SELECT_IMAGE_REQUEST_CODE`是一个自定义的请求码,用于识别返回的结果。 当用户选择图片后,我们需要在`onActivityResult()`方法中处理返回的数据: ```java @...

    android studio 保存图片到本地相册

    调用`Intent.ACTION_MEDIA_SCANNER_SCAN_FILE`意图,将新图片的URI作为数据传递,以触发媒体扫描。完成扫描后,用户可以在相册中看到新图片。 以下是一个简单的代码示例: ```java public void saveImageFromUrl...

    Android-实现炫酷的获取本地图片和相机拍照图片-自定义组件

    1. Intent选择器:可以使用Intent来打开系统的图片选择器,让用户从相册中选择图片。创建一个Intent,设置类型为`Intent.ACTION_PICK`,并指定数据类型为`image/*`。然后启动这个Intent,用户选择图片后,通过`...

    Android高级应用源码-自定义本地相册的功能,可以多选图片用.zip

    总结来说,这个源码实例旨在教授如何在Android应用中自定义一个功能完备的本地相册,包括从媒体库中获取图片、展示图片列表、支持多选以及处理运行时权限。对于想要提升Android开发技能,特别是涉及多媒体处理的...

    WPF调用本地摄像头拍照并保存为图片

    在本文中,我们将深入探讨如何在Windows Presentation Foundation (WPF) 应用程序中调用本地摄像头进行拍照,并将拍摄的照片保存为.jpg格式的图片。这个过程涉及到几个关键的技术点,包括访问硬件设备、捕获视频流...

    从图库一次选择多张图片

    这个自定义相册会替代系统默认的图片选择Intent,允许用户通过手指操作进行多选。 2. **GridView与ListView**:这两个都是Android中常见的布局管理器,用于展示可滚动的列表数据。在本项目中,GridView可能被用于...

    android仿微信聊天语音,表情,拍照及本地选择相册和本地保存聊天记录

    本文将深入探讨如何在Android应用中实现微信聊天的语音录制、表情发送、拍照以及从本地相册选择图片,同时还会讨论如何保存和加载聊天记录。 一、语音录制与播放 在Android中,可以使用MediaRecorder类来实现语音...

    Android读取本地照片和视频相册实例代码

    在Android开发中,读取本地照片和视频是常见的功能需求,尤其在涉及到用户选择媒体文件的应用场景中。本文将深入探讨如何使用ContentProvider API来高效地实现这...这个方法适用于大部分需要访问用户媒体库的应用场景。

    android 拍照或从本地相册多次添加多张图片

    然后,我们需要创建一个按钮或菜单项来触发图片选择。点击按钮后,启动一个Intent来调用系统相机或相册。这里我们可以使用ACTION_IMAGE_CAPTURE和ACTION_PICK两个Intent: 1. 调用相机: ```java Intent ...

    WPF使用Emgu.CV读取本地图片文件、打开网络视频、本地视频文件、计算机摄像头

    3. **读取本地图片文件**:使用Emgu.CV,你可以轻松地加载本地图片。在C#代码中,创建一个`Image, byte&gt;`类型的变量,然后调用`Image.FromFile()`方法,传入图片文件路径即可。 ```csharp Image, byte&gt; image = ...

    图片下载并且保存至本地

    在IT行业中,图片下载并保存至本地是一个常见的需求,尤其对于网页爬虫、社交媒体应用或者数据分析项目来说。这个过程涉及到网络请求、数据处理以及文件存储等多个环节。下面将详细讲解这个过程及其相关知识点。 ...

    C++ QT 显示图片

    要加载本地图片,首先你需要创建一个QImage对象,并使用`QImage::load()`函数指定图片文件的路径。例如: ```cpp QImage image("path_to_your_image.jpg"); if (image.isNull()) { qDebug() ; } else { // ...

    随机选择图片

    然后,针对特定的图片格式(在这个例子中是jpg),使用相应的库如PIL(Python Imaging Library)或OpenCV来打开并处理图片。 2. 随机显示:要随机显示图片,我们需要生成一个随机索引。在Python中,`random`模块...

    js获取 input file 图片立即显示

    在网页开发中,用户上传图片是一项常见的功能,例如在社交媒体、博客或电商平台。"js获取input file 图片立即显示"这个话题就是关于如何利用JavaScript来实现在用户选择图片后即时预览的功能。以下是一个详尽的步骤...

    android从相册选择图片并裁剪

    这个功能涉及到多个组件和技术,包括Intent、媒体库访问、图片处理以及权限管理。以下将详细讲解实现这一功能的关键步骤和知识点。 1. **Intent的使用**: - `Intent` 是Android系统中用于启动活动(Activity)或...

Global site tag (gtag.js) - Google Analytics