原帖地址:Android 开发 调用图库选择图片实现和参数详解

我在网上看到摩讯的分享SDK,然后下载来看看,不过里面缺少了选择图库的功能,于是乎没事就加上 调用图库选择本地图片的功能,

大家有对摩讯有兴趣的话可以去下载来看看 摩讯分享SDK 摩讯社区SDK 先上实现代码:
转载--Android 开发 调用图库选择图片实现和参数详解_第1张图片 ”分享本地图片“按钮事件: [java] //选择图片,调用图库 bt4.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType("image/*"); intent.putExtra("crop", true); intent.putExtra("return-data", true); startActivityForResult(intent, 2); } }); 点击之后跳转到图库: 转载--Android 开发 调用图库选择图片实现和参数详解_第2张图片 这是一个回调函数,选择完图片,第一个if 判断是否返回成功,第二个if 判断requestCode和上面 startActivity(),里的参数相同,就获取图片 ,注意:在上面按钮里一定要加上这句话: intent.putExtra("return-data", true); 否则返回的data 为空,稍后详 细讲解参数的作用 [html] @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (resultCode == RESULT_OK) { System.out.println("requestCode"+requestCode); if (requestCode == 2) { Uri uri = data.getData(); System.out.println(uri.getPath()); ContentResolver cr = this.getContentResolver(); try { bmp = BitmapFactory.decodeStream(cr.openInputStream(uri)); MCShareLaunchShareHelper.shareContentWithBitmap("测试分享本地图片", bmp, "your share url", "", MoxunActivity.this); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } 回调函数跳转返回成功,跳转到分享界面(回调函数中这句话 是我调用的摩讯的分享SDK的功能,跟本文无关 MCShareLaunchShareHelper.shareContentWithBitmap("测试分享本地图片", bmp, "your share url", "", MoxunActivity.this);), 中部那个android图片就是所选的那张图片 转载--Android 开发 调用图库选择图片实现和参数详解_第3张图片 Android中 调用图库选择图片的参数详解 Intent intent = new Intent(Intent.ACTION_GET_CONTENT, null); intent.setType("image/*"); //这个参数是确定要选择的内容为图片, intent.putExtra("crop", "circle"); //设置了参数,就会调用裁剪,如果不设置,就会跳过裁剪的过程。 intent.putExtra(" aspectX", 33); //这个是裁剪时候的 裁剪框的 X 方向的比例。 intent.putExtra("aspectY",43); //同上Y 方向的比例. (注意: aspectX, aspectY ,两个值都需要为 整数,如果有一个为浮点数,就会导致比例失效。) //设置aspectX 与 aspectY 后,裁剪框会按照所指定的比例出现,放大缩小都不会更改。如果不指定,那么 裁剪框就可以随意调整了。 intent.putExtra("outputX", 50); //返回数据的时候的 X 像素大小。 intent.putExtra("outputY", 100); //返回的时候 Y 的像素大小。 //以上两个值,设置之后会按照两个值生成一个Bitmap, 两个值就是这个bitmap的横向和纵向的像素值,如果裁剪的图像和这个像素值不符合,那么空白部分以黑色填充。 intent.putExtra("noFaceDetection", true); // 是否去除面部检测, 如果你需要特定的比例去裁剪图片,那么这个一定要去掉,因为它会破坏掉特定的比例。 intent.putExtra("return-data", true); //是否要返回值。 一般都要。我第一次忘加了,总是取得空值,囧! startActivityForResult(intent, 1);

更多相关文章

  1. ReactNative Android 实现加载本地图片
  2. Android Tween动画之RotateAnimation实现图片不停旋转
  3. android:scaleType="matrix"布局文件加载图片时候的显示方式
  4. android Matrix处理图片原理及方法整理
  5. Android开发实践:常用NDK命令行参数
  6. 全屏显示布局随机图片的显示
  7. android 图片内存溢出
  8. Android实现图片随意拖动、缩放
  9. Android图片双指缩放,单指移动实现

随机推荐

  1. Android(安卓)之 ContentProvider的简介-
  2. Android图形显示系统(一)
  3. Android操作HTTP实现与服务器通信
  4. 如何去掉android 控件默认选中时的背景橘
  5. Android--快速开发框架 afinal
  6. Android成长史
  7. Loop,Handler,Message的机制
  8. 2014 Android(安卓)各个版本市场占有率
  9. Android(安卓)Studio 4.0 新功能与优化
  10. Android(安卓)ViewGroup中事件触发和传递