android调用相册并显示图片_Android获取相册列表

android调用相册并显示图片_Android获取相册列表从之前的项目摘出来这段代码,去掉了裁剪功能packagecom.example.one;importandroid.content.Intent;importandroid.database.Cursor;importandroid.graphics.Bitmap;importandroid.graphics.BitmapFactory;importandroid.g…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

从之前的项目摘出来这段代码,去掉了裁剪功能

package com.example.one;

import android.content.Intent;
import android.database.Cursor;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.preference.PreferenceManager;
import android.provider.MediaStore;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.Toast;

public class InsertActivity extends AppCompatActivity implements View.OnClickListener {

    private ImageView ivPicture;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_insert);

        initViews();
        bindClick();
    }

    private void bindClick() {
        ivPicture.setOnClickListener(this);
    }

    private void initViews() {
        ivPicture=findViewById(R.id.ivPicture);
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()){
            case R.id.ivPicture:
                Intent galleryIntent=new Intent(Intent.ACTION_GET_CONTENT);
                galleryIntent.addCategory(Intent.CATEGORY_OPENABLE);
                galleryIntent.setType("image/*");//图片
                startActivityForResult(galleryIntent,1);//跳转,传递打开相册请求码
                break;
        }
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if(resultCode!=RESULT_OK) {
            return;
        }else{
            switch (requestCode){
                case 1:
                    Uri uri=data.getData();
                    String[] images={MediaStore.Images.Media.DATA};//将获取到的
                    Cursor cursor=this.managedQuery(uri,images,null,null,null);
                    int index=cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
                    cursor.moveToFirst();
                    String img_uri=cursor.getString(index);
                    /*显示图片*/
                    showPicture(img_uri);
                    break;
            }
        }

    }

    /*显示图片*/
    private void showPicture(String img_uri) {
        ivPicture.setImageBitmap(BitmapFactory.decodeFile(img_uri));
    }
}

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/193605.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux查看网卡详细信息_linux查看物理网卡

    linux查看网卡详细信息_linux查看物理网卡Linux下查看网卡信息(转载)1)通过mii-tool指令[root@localhostroot]#mii-tooleth0:negotiated100baseTx-FD,linkoketh1:nolink或[root@localhostroot]#mii-tool-veth0:negotiated100baseTx-FD,linkokproductinfo:…

    2022年10月19日
    2
  • 从面试题看技术学�

    从面试题看技术学�

    2021年12月3日
    42
  • MySQL自定义函数实例「建议收藏」

    MySQL自定义函数实例「建议收藏」关于MySQL函数的基本内容,网上有很多的资料,仅在此整理一些有价值的sql实例,以方便自己阅读,见例子便知内容。1.求两点之间的距离?DELIMITER//CREATEFUNCTIONdistance_fn(x1DOUBLE,y1DOUBLE,x2DOUBLE,y2DOUBLE)RETURNSDOUBLEBEGINSET@distanc…

    2025年10月2日
    4
  • 实现一个单向链表_java链表添加

    实现一个单向链表_java链表添加链表是常用的一种数据结构,如何创建链表、增、删、查找等功能是本文讨论的内容。首先,链表需要两个指针,一个是头指针是固定不变的,一个是移动变化的指针。(1)为什么要头指针?原因是单向列表中的数据结构包含的只有下一个数据的指针,这样就说明了,单向链表是不可逆向进行操作。所有的操作都需要正向去操作。这时我们必须要知道第一个数据的地址,才能从第一个数据往后访问其他数据。(2)可移动的指针的作用有两个,一个…

    2025年7月25日
    2
  • vue-echarts画深度图

    vue-echarts画深度图安装vue-echarts依赖cnpminstallvue-echarts–save按需引入vue-echarts绘制深度图全局引入会将所有的echarts图表打包,导致体积过大,这里推荐按需引入。<template><div><h2>深度图</h2><e-chartsauto-res…

    2022年5月12日
    46
  • 驼峰命名法规则_RS命名法举例

    驼峰命名法规则_RS命名法举例三种流行的命名法则目前,业界共有四种命名法则:驼峰命名法、匈牙利命名法、帕斯卡命名法和下划线命名法,其中前三种是较为流行的命名法。驼峰命令法(Camel): 也称骆驼式命名法正如它的名称所表示的那样,是指混合使用大小写字母来构成变量和函数的名字例如,下面是分别用骆驼式命名法和下划线法命名的同一个函数:程序代码printEmployeePaychecks();print_em…

    2025年7月31日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号