添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

原文地址: http://blog.csdn.net/nbalichaoq

android中调用系统图库本来是一个很基本的东西,几乎每个app都用的到(最基本的更换用户头像),网上的相关

容很多,本来找了几篇看了一下,拿几台测试机试了一下感觉就没什么问题了,但是适配问题慢慢就来了。

一.打开图库的基本方法。

通过查询资料,调用系统图库基本有3种方法。

1.使用 Intent.ACTION_PICK

Intent i = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media. EXTERNAL_CONTENT_URI); //调用android的图库
//i.setType("image/*");//不可设置type,否则noactivityfound
startActivityForResult(Intent. createChooser(i,null) , 2) ;

这个intent在android6.0以下是可以用的,但是到了6.0就无效了,具体打印log忘记了,官方文档也只用了这

Intent来获取留联系人,所以pass掉。

2.使用Intent.ACTION_GET_CONTENT

Intent innerIntent = new Intent(Intent.ACTION_GET_CONTENT) ; //"android.intent.action.GET_CONTENT"
innerIntent.setType( "image/*"); //查看类型 String IMAGE_UNSPECIFIED = "image/*";
innerIntent.addCategory(Intent. CATEGORY_OPENABLE );
startActivityForResult(Intent. createChooser(innerIntent, null) , 2) ;

并且有个bool型的extra EXTRA_ALLOW_MULTIPLE 来支持多选功能(4.3及以上版本支持)。

官方文档上说,这个intent是用来“检索一个特定类型的文件”并且回返回检索到的文件的一个引用(文件的copy)

这个貌似是可以用的,而且也是大多数人选择。

3.使用Intent.ACTION_OPEN_DOCUMENT

Intent intent =
android中调用系统图库本来是一个很基本的东西,几乎每个app都用的到(最基本的更换用户头像),网上的相关内容很多,本来找了几篇看了一下,拿几台测试机试了一下感觉就没什么问题了,但是适配问题慢慢就来了。一.打开图库的基本方法。通过查询资料,调用系统图库基本有3种方法。1.使用Intent.ACTION_PICKIntent i = new Intent(Intent.ACTION_
大家好,今天我们继续来学习 Android 8.0 系统 适配 。 之前我们已经讲到了, Android 8.0 系统 最主要需要进行 适配 的地方有两处:应用图标和通知栏。在上一篇文章当中,我们学习了 Android 8.0 系统 应用图标的 适配 ,还没有看过这篇文章的朋友可以先去阅读 Android 应用图标微技巧,8.0 系统 中应用图标的 适配 。 那么本篇文章,我们自然要将重点放在通知栏上面了,学习一下 Android 8.0 系统 的通知栏 适配 。 其实在8.0 系统 之前,还有一次通知栏变动比较大的版本,就是5.0 系统 。关于5.0 系统 需要对通知栏进行 适配 的内容,我也整理了一篇文章,感兴趣的朋友可以去阅读 Android 通知
android :调用原生的activity(即:ACTION_GET_CO NT E NT )进行文件选择,实现多个文件一起选择 前几天做一个东西,需要从手机选择文件。我选择最简单的调用 android 自带的选择文件activity进行操作,这里做一下总结。 这里简单把实现的过程分为三个步骤: 打开 选择文件activity 拿到选到文件的uri资源 将uri转换为对应的path,在path转化为 File ,就拿到对应的文件了 首先是 打开 选择文件的activity,使用 Inte nt 显示调用,下面为对应的代码: // 创建一个内容获取动作的意图(准备跳到 系统 相册) Inte nt album Inte nt = new Inte nt ( Inte nt .ACTION_GET_CO NT E NT ); album Inte nt .put Extra ( Inte nt . EXTRA _ ALLOW _ MULTIPLE , true); // 是否允许多选...
转载请注明出处:codog_main的博客   有时我们想选择文件,但是又懒得自己去写一个文件浏览器,使用安卓原生的文件选择器或引入第三方库无疑是最佳选择,因为写自己不喜欢的东西真的非常痛苦。   安卓开启 系统 原生文件浏览器的教程网上已经烂大街了,但是很少有文章提及如何进行多选文件。我们在开启原生的文件浏览器时,默认是单选的,即点击文件立即返回uri,想实现多选只需要加入语句: inte ...
Inte nt 用于通过描述您想在某个 Inte nt 对象中执行的简单操作(如“查看地图”或“拍摄照片”)来启动另一应用中的某个 Activity。 这种 Inte nt 称作隐式 Inte nt ,因为它并不指定要启动的应用组件,而是指定一项操作并提供执行该操作所需的一些数据.  本文介绍几种可用于执行常见操作的隐式 Inte nt ,按处理 Inte nt 的应用类型分成不同部分 Service是应用程序Application的一个组件(compone nt )。 它的作用有两点:1.用来提供一个长期在后台运行并且不与用户交互的操作,2.也可以为其他应用程序提供服务。 Service必须和其他四大组件一样,使用标签在 Android Manifest.xml中
随着应用不断迭代,业务线的扩展,应用越来越大(比如集成了各种第三方sdk或者公共支持的jar包,项目耦合性高,重复作用的类越来越多),相信很多人都遇到过如下的错误: UNEXPECTED TOP-LEVEL EXCEPTION: java.lang.IllegalArgume nt Exception: method ID not in [0, 0xffff]: 65536 at com.a
在安卓中,有许多关于如何使用RecyclerView实现“drag & drop”与swipe-to-dismiss”的教程,库和例子。即使现在已经有了新的,更优的实现方式,大多数仍然是使用老旧的View.OnDragListener以及Roman Nurik在SwipeToDismiss中所使用的方法。很少有人使用新的api,反而要么经常依赖于GestureDetectors和on Inte r