zoukankan      html  css  js  c++  java
  • Android分组子级的不同视图布局之BUG奇遇记

    Android分组子级的不同视图布局之BUG奇遇记

    最近在使用按日期分类列表,二级条目可能不一样,于是就想到了ExpandableListView。

    ExpandableListView的布局显示分割线问题:

     <ExpandableListView
                    android:id="@+id/expandableListView"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:background="@color/white"
                    android:childDivider="#ededed"
                    android:divider="#ededed"
                    android:dividerHeight="10dp"
                    android:listSelector="@color/transparent" />
    • childDivider:二级条目的分割线 (可以是drawable或color)

    • divider:父级条目的分割线 (可以是drawable或color)

    • dividerHeight:分割线的高度

    适配器的BaseExpandableListAdapter中需要注意的getChildType()类型需要从0~getChildTypeCount()-1;同理getGroupType要求也一样。看源码:

    /**
         * Get the type of child View that will be created by
         * {@link android.widget.ExpandableListAdapter#getChildView(int, int, boolean, View, ViewGroup)}
         * for the specified child item.
         * 
         * @param groupPosition the position of the group that the child resides in
         * @param childPosition the position of the child with respect to other children in the group
         * @return An integer representing the type of child View. Two child views should share the same
         *         type if one can be converted to the other in
         *         {@link android.widget.ExpandableListAdapter#getChildView(int, int, boolean, View, ViewGroup)}
         *         Note: Integers must be in the range 0 to {@link #getChildTypeCount} - 1.
         *         {@link android.widget.Adapter#IGNORE_ITEM_VIEW_TYPE} can also be returned.
         * @see android.widget.Adapter#IGNORE_ITEM_VIEW_TYPE
         * @see #getChildTypeCount()
         */

        int getChildType(int groupPosition, int childPosition);
  • 相关阅读:
    学习记录6
    学习记录5
    学习记录4
    学习记录3&开启新的世界
    学习记录2
    学习记录1
    类、对象和包
    班会总结
    请简单描述一下,java程序的运行过程,以及java为什么能跨平台
    JDK、JRE、JVM的区别与关系
  • 原文地址:https://www.cnblogs.com/denluoyia/p/9954184.html
Copyright © 2011-2022 走看看