• android4.0 的图库Gallery2代码分析(四) 之相册的数据处理以及显示


     最近迫于生存压力,不得不给人兼职打工。故在博文中加了个求点击的链接。麻烦有时间的博友们帮我点击一下。没时间的不用勉强啊。不过请放心,我是做技术的,肯定链接没病毒,就是我打工的淘宝店铺。嘻嘻。http://shop108130013.taobao.com。谢谢捧场。以后就每周写篇原创的技术博客回报大家,实在是迫于生计,无所不用其极。请谅解。

    相册的数据处理以及显示

    相册的处理都包含在AlbumSetPage中。要明白相册的形成过程,一定要清楚AlbumSetPage的形成过程。

    AlbumSetPage的形成过程如下:

    在图库GalleryAppImpl的应用androidmanifest中定义了名为Gallery的主Activity(com.android.gallery3d.app.Gallery)

    当图库启动时,启动Gallery。Gallery的启动做了两件事,初始化其GalleryActionBar和根据状态器选择要显示的内容。

    第一次进入图库时,图库会显示相册,即启动AlbumSetPage。通过startDefaultPage() 方法中的getStateManager().startState(AlbumSetPage.class, data);这步操作,开始启动相册的显示。

    在Gallery.java启动AlbumSetPage时,不能忽略的是它放入启动事件的数据:

    data.putString(AlbumSetPage.KEY_MEDIA_PATH,getDataManager().getTopSetPath(DataManager.INCLUDE_ALL));

    有了数据和启动的AlbumSetPage类,状态机自然可以通过startState来启动相册了。(StateManager我称之为状态机,是图库设计的一大特色,这个下接专门分析一下,这里只是以其执行结果来看相册的显示)

    未完待续。。。

  • 相关阅读:
    Spring中的@Transactional(rollbackFor = Exception.class)属性详解
    查询数据库中表数量和各表中数据量
    69道Spring面试题和答案
    Spring常见面试题总结(超详细回答)
    nginx 解决session一致性
    redis 主从同步
    如何实现一个线程安全的单例,前提是不能加锁
    InnoDB中一棵B+树能存多少行数据
    ConcurrentHashMap 源码分析
    java HashMap 源码解析
  • 原文地址:https://www.cnblogs.com/senior-engineer/p/4855897.html
Copyright © 2020-2023  润新知