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));
    }
}

 

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 在Origin绘图和表格中插入Latex公式

    在Origin绘图和表格中插入Latex公式关于Origin与Latex结合应用下载:originlatexapp下载使用教程origin安装app教程官方教程参考https://baijiahao.baidu.com/s?id=1666395737690093701&wfr=spider&for=pc

  • flume之退避算法backoff algorithm[通俗易懂]

    flume之退避算法backoff algorithm[通俗易懂]flume之退避算法backoffalgorithm什么是退避算法:Inasinglechannelcontentionbasedmediumaccesscontrol(MAC)protocols,whenevermorethanonestationornodetriestoaccessthemediumatthesameinstantof…

  • linuxtop命令详解(xargs命令详解)

    查看多核CPU命令 mpstat-PALL 和 sar-PALL  说明:sar-PALL>aaa.txt  重定向输出内容到文件aaa.txt top命令经常用来监控linux的系统状况,比如cpu、内存的使用,程序员基本都知道这个命令,但比较奇怪的是能用好它的人却很少,例如top监控视图中内存数值的含义就有不少的曲解。本文通过一个运行中的WEB服务器的top监控截图,讲

  • 函数指针和函数指针数组及其应用

    函数指针和函数指针数组及其应用1.函数指针先来看一个简单的例子。inta=3;void*p=&a;这是一个基础的不能再基础的例子。相信学过指针的都能看得懂。P是一个指针,指向a。a是一个整形变量。函数指针和其类似,只不过其指向的不是一个变量,而是一个函数,仅此而已。话不多说,看个例子。void(*funcPointer)(doublex);voidf1(doublex){}voidf

  • jvm之指令重排_java指令重排

    jvm之指令重排_java指令重排引言:在Java中看似顺序的代码在JVM中,可能会出现编译器或者CPU对这些操作指令进行了重新排序;在特定情况下,指令重排将会给我们的程序带来不确定的结果…..1. 什么是指令重排?     在计算机执行指令的顺序在经过程序编译器编译之后形成的指令序列,一般而言,这个指…

  • int对应的jdbctype_java clob类型

    int对应的jdbctype_java clob类型在Oracle中有些字段不是必填时在用户使用的时候会出现数据null的情况。这个时候在Oracle中是无法进行插入的。JDBCTypeJavaTypeCHARStringVARCHARStringLONGVARCHARStringNUMERICjava.math.BigD…

    2022年10月20日

发表回复

您的电子邮箱地址不会被公开。

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