1,android调用gallery获取图片
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("image/*");
startActivityForResult(intent,GET_PHOTO_WITH_GALLARY);
然后在
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
data.getData()}
获取图片的uri。
通过uri获取到Bitmap:
public Bitmap getBitmapFromUri(Uri uri) {
try {
// 读取uri所在的图片
Bitmap bitmap = MediaStore.Images.Media.getBitmap(
this.getContentResolver(), uri);
return bitmap;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
在把获取到的Bitmap转化为Drawable
BitmapDrawable bd = new BitmapDrawable(avatar);
获取图片的其他信息,可以通过如下代码:
Cursor cursor = getContentResolver().query(uri, null, null, null, null);
cursor.moveToFirst();
String imgNo = cursor.getString(0); //图片编号
String imgPath = cursor.getString(1); //图片文件路径
String imgSize = cursor.getString(2); //图片大小
String imgName = cursor.getString(3); //图片文件名
2,如果要调用带裁剪的gallery,只需要把intent改成如下:
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("image/*");
intent.putExtra("crop", "true");
intent.putExtra("aspectX", 1);
intent.putExtra("aspectY", 1);
intent.putExtra("outputX", 80);
intent.putExtra("outputY", 80);
intent.putExtra("return-data", true);
分享到:
相关推荐
在Android平台上,`Gallery`组件是一个非常有用的控件,它允许用户通过水平滑动来浏览一系列的图片或项目。在早期的Android版本中,`Gallery`是实现轮播效果的常见选择,但在Android 3.0(API级别11)之后,`...
在Android平台上,`Gallery`组件是早先版本中用于展示一系列图像或选择图片的一个控件。这个小例子展示了如何在Android应用中集成和使用`Gallery`控件,以实现一个可滚动的图片画廊功能。下面我们将深入探讨`Gallery...
在Android开发中,`Gallery`组件是一个非常有用的控件,它允许用户在水平轴上滑动浏览多个项目,常用于实现图片浏览或者选项选择。在本主题中,我们将深入探讨如何利用`Gallery`来实现图片滑动,并且在选中图片时...
Gallery2是一个针对Android平台的开源图片浏览应用,其源码为我们提供了一个深入理解Android系统中图片展示、手势操作以及图片库集成的实例。通过分析这个项目,我们可以学习到许多关于Android开发的重要知识点。 ...
在Android 4.0 Gallery源码中,可以看到使用了AsyncTask或者IntentService进行异步操作,防止主线程阻塞,提高应用响应速度。 6. **UI设计与动画效果** Gallery的界面设计简洁且交互流畅,利用Animation类和...
此外,代码还处理了触摸事件,通过监听`downX`和`upX`来识别用户手势,这可能用于控制`ImageSwitcher`中的图像切换,或者用于`Gallery`中的滚动操作,从而提供更丰富的交互体验。 #### 总结 结合`Gallery`和`...
在Android开发中,`Gallery`组件是Android早期版本(API level 16及以下)提供的一种可以水平滑动浏览图片或项目的控件。它允许用户通过手指滑动来浏览一串连续的视图,通常用于展示照片或者进行选择操作。然而,...
在Android开发中,`Gallery`组件是一个非常有用的控件,它允许用户在多个项目之间进行水平滑动选择,常用于图像浏览或者选项选择等场景。本篇将详细讲解如何实现一个具有循环滚动、选中放大功能,并且可以使用按键...
3. **触摸事件处理**:Gallery通过重写`onTouchEvent(MotionEvent event)`来处理用户的触摸操作。它使用GestureDetector和Scroller来检测滑动和惯性滚动,提供流畅的用户体验。 4. **焦点与选择**:Gallery允许用户...
`Logcat`用于调试日志输出,有助于追踪`Gallery`的操作。 由于`Gallery`已被弃用,开发者应考虑使用`RecyclerView`或`ViewPager`作为替代方案。`RecyclerView`提供了更大的灵活性,可自定义布局管理器以实现类似`...
Gallery3D是Android操作系统中的一款强大的3D图像查看应用,专为用户提供了独特的三维浏览体验。它不仅是一款高效的图片管理工具,还利用了Android设备的硬件加速功能,实现了流畅的3D动画效果,让用户在手机和平板...
1. **在XML布局中添加Gallery**:在布局文件中声明`<Gallery>`标签,并设置相关属性,如宽度、高度、间隔等。 2. **创建适配器**:通常需要继承`BaseAdapter`并重写`getCount()`、`getItemId()`、`getItem()`以及`...
在Android平台上,"android gallery3D" 是一个用于创建类似iPhone风格3D图像浏览体验的应用程序。这个项目致力于实现一种视觉上引人入胜且流畅的图片画廊,通过优化和特殊效果处理,降低了图像边缘的锯齿现象,提供...
在Android开发中,`Gallery`组件是用于展示一系列图片或元素的一个滚动视图,它允许用户通过水平滑动来浏览内容。然而,由于Android API Level 16(Android 4.1 Jelly Bean)中`Gallery`组件被弃用,开发者需要寻找...
Gallery3D的用户界面设计考虑了触摸操作的便捷性和直观性。`ui`模块包含了大量的视图组件和动画效果实现,如平滑的滚动过渡、缩放等手势识别。这些交互细节使得应用更具吸引力,同时也对开发者如何在Android上实现高...
1. **View类**:Gallery2是基于Android的View类进行扩展的,它继承自AbsSpinner,这是一个抽象基类,处理了与Spinner相关的大部分逻辑。Gallery2重写了onMeasure()、onLayout()和onTouchEvent()等方法,以实现其特有...
在Android中,直接在主线程执行耗时操作(如网络请求、文件读写等)会导致应用无响应,因此需要将这些操作放在子线程(工作线程)进行,这就是异步加载的基本思想。常用的异步加载库有`AsyncTask`、`Loader`以及第三...
下面我们将深入探讨与这个项目相关的Android知识点。 1. **Android SDK**:所有Android应用都基于Android SDK,这是一个包含了开发工具、库和API文档的集合。开发者需要安装并配置SDK才能进行Android开发。 2. **...
在Android平台上,`Gallery`组件是早期版本中用于展示可滚动图像或项目列表的一种控件。这个源码项目,名为"android gallery 源码",显然是一个利用Android SDK开发的应用,其目的是实现一个交互式的图片展示功能。...
在Android开发中,`Gallery`是一个非常有用的控件,它允许用户通过横向滑动来浏览一系列的项目,常用于图片浏览、选项选择等场景。在这个实例中,我们将会深入探讨如何利用Android SDK中的`Gallery`控件和`...