zoukankan      html  css  js  c++  java
  • 017_03获取图库图片

      当需要在之前Activity中得到新打开Activity的数据,需要系统提供的startActivityForResult(Intent intent,int requestCode)方法。为了取得传回的数据,需要在之前的Activity中重写onActivityResult(int requestCode, int resultCode,Intent data)方法。

     1 package com.example.day17_03getExif;
     2 
     3 import android.app.Activity;
     4 import android.content.Intent;
     5 import android.database.Cursor;
     6 import android.net.Uri;
     7 import android.os.Bundle;
     8 import android.provider.MediaStore;
     9 import android.view.View;
    10 import android.widget.ImageView;
    11 
    12 public class MainActivity extends Activity {
    13 
    14     @Override
    15     protected void onCreate(Bundle savedInstanceState) {
    16         super.onCreate(savedInstanceState);
    17         setContentView(R.layout.activity_main);
    18     }
    19     
    20     public void getpicturefromgallery(View v){
    21         
    22         Intent intent = new Intent();
    23         intent.setAction("android.intent.action.PICK");
    24         intent.setType("image/*");
    25         startActivityForResult(intent, 100);     
    26     }
    27     
    28     @Override
    29     protected void onActivityResult(int requestCode, int resultCode, Intent data) {    
    30         if (requestCode==100 &&resultCode==RESULT_OK ) {
    31             //resultcode ok才可以从里面去获取你要的数据
    32             System.out.println("MainActivity.onActivityResult()"+resultCode);
    33             ImageView iv_photo = (ImageView) findViewById(R.id.iv_photo);
    34             
    35             Uri uri =data.getData();
    36             System.out.println(uri);
    37             iv_photo.setImageURI(uri);
    38             
    39             System.out.println("MainActivity.onActivityResult()"+uri.toString());        
    40             String[] filePathColumn = { MediaStore.Images.Media.DATA };
    41             Cursor cursor=    getContentResolver().query(uri, filePathColumn, null, null, null);
    42             cursor.moveToNext();    
    43             String filepath = cursor.getString(0);
    44             System.out.println("MainActivity.onActivityResult()"+filepath);  
    45         }    
    46     }    
    47 }
     1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     2     xmlns:tools="http://schemas.android.com/tools"
     3     android:layout_width="match_parent"
     4     android:layout_height="match_parent"
     5     android:paddingBottom="@dimen/activity_vertical_margin"
     6     android:paddingLeft="@dimen/activity_horizontal_margin"
     7     android:paddingRight="@dimen/activity_horizontal_margin"
     8     android:paddingTop="@dimen/activity_vertical_margin"
     9     tools:context="com.example.day17_03getExif.MainActivity"
    10     android:orientation="vertical" >
    11     
    12     <Button
    13         android:layout_width="wrap_content"
    14         android:layout_height="wrap_content"
    15         android:text="获取图库图片" 
    16         android:onClick="getpicturefromgallery"/>
    17     
    18     <ImageView
    19         android:id="@+id/iv_photo"  
    20         android:layout_width="wrap_content"
    21         android:layout_height="wrap_content" />
    22         
    23 </LinearLayout>
    1 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    物随心转,境由心造,一切烦恼皆由心生。
  • 相关阅读:
    pytorch bug: for step,data in enumerate(loader)+Connection reset by peer
    pytorch bug
    ImportError: No module named '_tkinter', please install the python3-tk package
    nvidia-docker+cuda8.0+ubuntu16.04
    召回率,精确率,mAP如何计算
    tensorflow 迭代周期长,每个epoch时间变慢
    yolov3中 预测的bbox如何从特征图映射到原图?
    知乎问题:目标检测领域还有什么可以做的?
    目标检测数据增强,旋转方法
    OpenBLAS(1)----安装OpenBLAS
  • 原文地址:https://www.cnblogs.com/woodrow2015/p/4542499.html
Copyright © 2011-2022 走看看