Chinaunix首页 | 论坛 | 博客
  • 博客访问: 417467
  • 博文数量: 121
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1393
  • 用 户 组: 普通用户
  • 注册时间: 2014-03-11 12:17
个人简介

www.vibexie.com vibexie@qq.com

文章分类

全部博文(121)

文章存档

2015年(55)

2014年(66)

我的朋友

分类: Android平台

2015-03-21 13:25:59

在AndroidMainfest.xml中要添加各种权限,并且取消硬件加速

点击(此处)折叠或打开

  1. package cn.com.xiebiao.mytest;

  2. import android.app.Activity;
  3. import android.content.Intent;
  4. import android.graphics.BitmapFactory;
  5. import android.net.Uri;
  6. import android.os.Bundle;
  7. import android.os.Environment;
  8. import android.provider.MediaStore;
  9. import android.widget.ImageView;
  10. import java.io.File;
  11. import java.io.FileInputStream;
  12. import java.io.FileNotFoundException;
  13. import java.io.IOException;
  14. import java.io.InputStream;

  15. public class MainActivity extends Activity{
  16.     private static final int CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE = 100;
  17.     private ImageView imageView;
  18.     Uri uri;
  19.     File myfile;
  20.     File dir;

  21.     @Override
  22.     public void onCreate(Bundle savedInstanceState) {
  23.         super.onCreate(savedInstanceState);
  24.         setContentView(R.layout.activity_main);

  25.         imageView=(ImageView)this.findViewById(R.id.imageView);
  26.         //获取外部存储卡的路径,并且将图片保存为my.jpg
  27.         dir=Environment.getExternalStorageDirectory();
  28.         myfile=new File(dir,"my.jpg");

  29.         //将文件路径转为uri传给intent
  30.         uri=Uri.fromFile(myfile);
  31.         Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
  32.         //通知照相机保存照片到uri
  33.         intent.putExtra(MediaStore.EXTRA_OUTPUT,uri);
  34.         startActivityForResult(intent,CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);
  35.     }

  36.     @Override
  37.     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
  38.        if(requestCode==CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE && resultCode==RESULT_OK) {
  39.            try {
  40.                //读取存储卡中的图片在imageView中显示出来
  41.                InputStream inputStream=new FileInputStream(myfile);
  42.                byte[] buffer=new byte[inputStream.available()];
  43.                inputStream.read(buffer);
  44.                imageView.setImageBitmap(BitmapFactory.decodeByteArray(buffer,0,buffer.length));
  45.            } catch (FileNotFoundException e) {
  46.                e.printStackTrace();
  47.            } catch (IOException e) {
  48.                e.printStackTrace();
  49.            }
  50.        }
  51.     }
  52. }

阅读(1254) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~