GridLayer.java里的以下几个变量分别代表什么意思?分别在绘制过程的哪个步骤里有用到了?public static final int MAX_ITEMS_PER_SLOT = 32;
public static final int MAX_DISPLAYED_ITEMS_PER_SLOT = 4;
public static final int MAX_DISPLAYED_ITEMS_PER_FOCUSED_SLOT = 32;
public static final int MAX_DISPLAY_SLOTS = 96; 
public static final int MAX_ITEMS_DRAWABLE = MAX_ITEMS_PER_SLOT * MAX_DISPLAY_SLOTS; private final DisplayList mDisplayList = new DisplayList();
private final DisplayItem[] mDisplayItems = new DisplayItem[MAX_ITEMS_DRAWABLE];
private final DisplaySlot[] mDisplaySlots = new DisplaySlot[MAX_DISPLAY_SLOTS]; 

解决方案 »

  1.   

    主要是还没搞清楚里面提到的DISPLAY_SLOTS和DISPLAY_ITEMS分别对应界面上的哪些元素
      

  2.   

    GridLayer他主要由一个list , 多个Slots(块),多个Items 三部分组成。MAX_DISPLAY_SLOTS代表着在一个list里面最多可以有几个Slot(块),MAX_ITEMS_PER_SLOT 代表着每一个块里最多可以拥有几个item.MAX_DISPLAYED_ITEMS_PER_SLOT 代表每一个没有焦点的slot(块)最多可以显示几个item.而MAX_DISPLAYED_ITEMS_PER_FOCUSED_SLOT代表每一个有焦点在这个slot(块)最多可以显示多少个item。MAX_ITEMS_DRAWABLE这个GridLayer最多可以有多少个item.
      

  3.   

    感谢pang3510726681的答复!
    不过,List、Slots、Items分别对应的是界面上哪些元素呢?或是它们在绘制过程中分别起什么样的作用?通过验证,现在只知道MAX_DISPLAY_SLOTS表示的是点击进入某个图片文件夹后GridLayer最多可以同时显示的ThumbNail的个数,其它几个变量还无从验证。
      

  4.   

    我的理解是 displaylist管理着所有的displayslot,而displayslot管理着displayitem。
    Gallery3D里缩略图有两种: 一种是专辑类型的,一种是浏览类型的。可以对应MAX_DISPLAYED_ITEMS_PER_SLOT和MAX_DISPLAYED_ITEMS_PER_FOCUSED_SLOT两种,直白的理解就是有没有点击相应专辑缩略图。
      

  5.   

    你好。我现在也需要修改Gallery3D的源码。 但对其扫描SDcard的媒体文件这个过程不明白。 
    所以,想请教你。 可以加个QQ么。 你的QQ是多少。 
    如果你直接加我的QQ那就更好了。我的QQ:82455896.