zoukankan      html  css  js  c++  java
  • 压缩图片

    package com.test.demo;

    import java.io.File;
    import java.util.Calendar;

    import com.test.viewdemo.R;

    import android.net.Uri;
    import android.os.Bundle;
    import android.os.Environment;
    import android.provider.MediaStore;
    import android.app.Activity;
    import android.content.Context;
    import android.content.Intent;
    import android.graphics.Bitmap;
    import android.graphics.BitmapFactory;
    import android.graphics.BitmapFactory.Options;
    import android.util.Log;
    import android.view.LayoutInflater;
    import android.view.MotionEvent;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.view.View.OnTouchListener;
    import android.view.ViewGroup.LayoutParams;
    import android.view.ViewGroup.OnHierarchyChangeListener;
    import android.widget.Button;
    import android.widget.ImageView;
    import android.widget.LinearLayout;
    import android.widget.PopupWindow;
    import android.widget.Toast;

    public class MainActivity extends Activity {
    private Button btn_camera;
    private LinearLayout linear;
    private MainActivity _this;
    private Uri fileUri;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    _this = this;

    btn_camera = (Button) findViewById(R.id.button1);
    linear = (LinearLayout) _this.findViewById(R.id.image_linear);

    String path = Environment.getExternalStorageDirectory() + "/image";
    File file = new File(path);
    if(!file.exists()){
    file.mkdirs();
    }

    String time = Calendar.getInstance().getTime().toString();
    File mediaFile = new File(file.getAbsolutePath(),time + ".jpg");
    fileUri = Uri.fromFile(mediaFile);

    btn_camera.setOnClickListener(new OnClickListener(){

    @Override
    public void onClick(View v) {
    Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri);
    intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1);
    startActivityForResult(intent, 100);
    }
    });
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if(resultCode == _this.RESULT_OK){
    if(requestCode == 100){
    ImageView image = new ImageView(_this);
    LinearLayout.LayoutParams llparams = new LinearLayout.LayoutParams(80, 80);
    image.setLayoutParams(llparams);
    if(data != null){
    if(data.hasExtra("data")){
    Bitmap thumbnail = data.getParcelableExtra("data");
    image.setImageBitmap(thumbnail);
    }
    }else{
    int width = image.getLayoutParams().width;
    int height = image.getLayoutParams().height;

    BitmapFactory.Options option = new Options();
    option.inJustDecodeBounds = true;
    BitmapFactory.decodeFile(fileUri.getPath(), option);

    int imageW = option.outWidth;
    int imageH = option.outHeight;
    int scale = Math.max(imageW / width, imageH / height);

    option.inJustDecodeBounds = false;
    option.inSampleSize = scale;
    Bitmap bitmap = BitmapFactory.decodeFile(fileUri.getPath(), option);
    image.setImageBitmap(bitmap);
    linear.addView(image);
    if(linear != null){
    if(linear.getChildCount() > 0){
    linear.setVisibility(View.VISIBLE);
    }else{
    linear.setVisibility(View.GONE);
    }
    }
    }
    }
    }
    }



    }

  • 相关阅读:
    jquery 兼容的滚轮事件
    HTML5的manifest 本地离线缓存
    jquery.qrcode.js 生成二维码
    bootstrap modal垂直居中 (转)
    require.js Javascript模块化
    基于特征检测(SURF,SIFT方法)与特征匹配(Feature Matching)(FLANN方法)来寻找目标
    自动跟踪足球场上所有的选手
    python3.7+opencv3.4.1
    神经网络
    使用Python+OpenCV进行图像模板匹配(Match Template)
  • 原文地址:https://www.cnblogs.com/dengshiwei/p/4489130.html
Copyright © 2011-2022 走看看