zoukankan      html  css  js  c++  java
  • Android : 相机及本地储存

    Android 实现拍照以及本地储存,并可以通过 ListView 查看。

    使用工具

    • android studio (ver. 3.5.1)
    • android(sdk 29)
    • java(ver.1.8.0)
    • gradle(ver. 5.4.1)

    功能实现

    由于使用的图片是网络图片,所以先在 AndroidManifest.xml 添加照相机权限和文件读取权限:

    <uses-permission android:name="android.permission.CAMERA"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    

    调试时出现闪退应在设置中检查应用的权限。

    pc1

    设计一个 ListView 来浏览本地拍摄的照片。

    pic2

    监听拍照 button 的点击:

    		@Override
        public void onClick(View v) {
            Intent intent=new Intent();
            switch (v.getId())
            {
                case R.id.btn_photo:
                   DateFormat df = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
                    name=path+ df.format(new Date(System.currentTimeMillis())) +".jpg";
                    imagefile=new File(name);
                    try {
                        if(imagefile.exists())
                        {
                            imagefile.delete();
                        }
                        imagefile.createNewFile();
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                    imageUri= FileProvider.getUriForFile(this, "com.cqjtu.fileapplication.PhotoActivity.fileprovider",imagefile);
                    intent.setAction(MediaStore.ACTION_IMAGE_CAPTURE);
                    intent.addCategory("android.intent.category.DEFAULT");
                    intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);
                    startActivityForResult(intent, CAMER);
                    break;
            }
        }
    

    对本地照片进行压缩显示在 ListView 中:

    private Bitmap readImage(String content)
        {
            Bitmap pic=null;
            String filepath=path+content;
            pic=zoomBitmap2(filepath,250,250);
            return pic;
        }
    

    演示

    pic3pic4

    代码下载地址

    FileApplication

  • 相关阅读:
    little_by_little_2 为一个数据集创建一个dataset类。(基于pytorch)
    knn_in_python
    test
    numpy一些基础知识
    PIL模块
    环境小硕的转化之路-28-面向对象编程方法的适应性训练
    环境小硕的转行之路-27-面向对象的成员
    环境小硕的转行之路-26-初识面向对象
    3DES小工具
    环球好货,小黑鱼就是一个骗局
  • 原文地址:https://www.cnblogs.com/esllovesn/p/12208995.html
Copyright © 2011-2022 走看看