android record

来源:互联网 发布:数据分析是干什么的 编辑:程序博客网 时间:2024/05/10 07:19
<span style="font-family: Arial, Helvetica, sans-serif;">1. Bitmap photo = extras.getParcelable("data");</span>
Drawable drawable = new BitmapDrawable(null, photo);


2. 

在Activity或者组件之前传递信息时,一般采用intent绑定bundle的方式传值,但在使用过程中需要注意的是不要用bundle传递大容量数据,最大1M。
用传递Uri方法:
<pre style="font-family: Menlo; font-size: 12pt; background-color: rgb(255, 255, 255);"><pre name="code" class="java">/**     * 裁剪图片方法实现     * @param uri     */    public void startPhotoZoom(Uri uri) {        Intent intent = new Intent("com.android.camera.action.CROP");        intent.setDataAndType(uri, "image/*");        // crop=true是设置在开启的Intent中设置显示的VIEW可裁剪        intent.putExtra("crop", "true");        // aspectX aspectY 是宽高的比例        intent.putExtra("aspectX", 1);        intent.putExtra("aspectY", 1);        // outputX outputY 是裁剪图片宽高        intent.putExtra("outputX", 300);        intent.putExtra("outputY", 300);        intent.putExtra("return-data", false);//注意第二个参数为false,小图片用true直接传图片数据        startActivityForResult(intent, REQUESTCODE_CUTTING);    }
<pre name="code" class="java">@Override    public void onActivityResult(int requestCode, int resultCode, Intent data) {        switch (requestCode) {            case REQUESTCODE_PICK:// 直接从相册获取                try {                    startPhotoZoom(data.getData());                } catch (NullPointerException e) {                    e.printStackTrace();// 用户点击取消操作                }                break;            case REQUESTCODE_TAKE:// 调用相机拍照                File temp = new File(Environment.getExternalStorageDirectory() + "/MeasureMe/" + IMAGE_FILE_NAME);                startPhotoZoom(Uri.fromFile(temp));                break;            case REQUESTCODE_CUTTING:// 取得裁剪后的图片                if (data != null) {                    setPicToView(data);                }                break;        }    }
<pre name="code" class="java">/**     * 保存裁剪之后的图片数据     * @param picdata     */    private void setPicToView(Intent picdata) {        //照片的原始资源地址        Uri uri = picdata.getData();        //Bundle extras = picdata.getExtras();//如果上面参数为true,表示为小图片,用这一句直接得到图片数据        if (uri != null) {            // 取得SDCard图片路径做显示            //Bitmap photo = extras.getParcelable("data");            Bitmap photo = imageUtil.decodeSampledBitmapFromFile(fileUtil.getRealPathFromURI(uri, getActivity()), 0, 0);            Drawable drawable = new BitmapDrawable(null, photo);            urlpath = HeadPhotoUtil.saveFile(getActivity(), "temphead.jpg", photo);            user_head.setImageDrawable(drawable);            // 新线程后台上传服务端            //pd = ProgressDialog.show(getActivity(), null, "Saving...");            //new Thread(uploadImageRunnable).start();        }    }





0 0
原创粉丝点击