AndroidGaller2源码分析.docxVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
AndroidGaller2源码分析

图库Gallery2Gallery2主要功能是实现本地存储器、MTP存储器和网络存储器中媒体(图像和视频)的浏览、显示和更多操作(删除、分享、选择和缩放等)。下面用一张简单的用例图描述了Gallery2的功能和职责。Gallery 主要是4个页面的跳转:????AlbumSetPage.Java(相册缩略图);??? AlbumPage.java(单个相册照片缩略图);??? PhotoPage.java(单张照片);??? SlideShowPage.java(幻灯片界面);跳转过程:AlbumSetPage.Java→AlbumPage.java→PhotoPage.javaSlideShowPage.java是单独的。这些界面类父类为ActivityState.java;这些界面的切换由StateManager.java负责。1 界面跳转过程:在Galley2模块,我们先从程序的入口看起,在androidManifest.xml中注册Application标签(Android 系统会为每个程序运行时创建一个Application的类对象且仅创建一个,他的生命周期等于这个程序的生命周期,它是全局的单实例的,一般做一些全局的初始化操作),应用创建时就会被初始化,维护应用内部全局数据,主要看几个函数:initializeAsyncTask(), GalleryUtils.initialize(this), GalleryUtil是Gallery的工具类,获得了屏幕参数,WindowManager,Resource等Gallery 从launcher进入Gallery,进入GalleryActivity.ava@Overrideprotected void onCreate(Bundle savedInstanceState) {? ? …...? ? setContentView(R.layout.main);?? ? if (savedInstanceState != null) {? ? ? ?getStateManager().restoreFromState(savedInstanceState);? ? } else {? ? ? ? initializeByIntent();? ? }}? ? private void initializeByIntent() {? ? ? ? Intent intent = getIntent();? ? ? ? String action = intent.getAction();?? ? ? ? if (Intent.ACTION_GET_CONTENT.equalsIgnoreCase(action)){? ? ? ? ? ? startGetContent(intent);? ? ? ? } else if(Intent.ACTION_PICK.equalsIgnoreCase(action)) {? ? ? ? ? ? // We do NOT really support the PICKintent. Handle it as? ? ? ? ? ? // the GET_CONTENT. However, we needto translate the type? ? ? ? ? ? // in the intent here.? ? ? ? ? ? Log.w(TAG, action PICK is notsupported);? ? ? ? ? ? String type =Utils.ensureNotNull(intent.getType());? ? ? ? ? ? if(type.startsWith(vnd.android.cursor.dir/)) {? ? ? ? ? ? ? ? if(type.endsWith(/image)) intent.setType(image/*);? ? ? ? ? ? ? ? if(type.endsWith(/video)) intent.setType(video/*);? ? ? ? ? ? }? ? ? ? ? ? startGetContent(intent);? ? ? ? } else if(Intent.ACTION_VIEW.equalsIgnoreCase(action)? ? ? ? ? ? ? ? ||ACTION_REVIEW.equalsIgnoreCase(action)){? ? ? ? ? ? startViewAction(intent);? ? ? ? } else {? ? ? ? ? ? startDefaultPage();? ? ? ? }}从这个函数看,如果从相册应用

文档评论(0)

haihang2017 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档