【问题标题】:Android SuperSLiM: Margin between sectionsAndroid SuperSLiM:部分之间的边距
【发布时间】:2015-06-29 07:42:17
【问题描述】:

我正在使用SuperSLiM library 从谷歌日历应用程序重新创建议程视图。我遇到的问题是在部分之间创建一个边距。我尝试将topMargin 放在第一个位置时,但标题看起来不正确。

【问题讨论】:

    标签: android superslim


    【解决方案1】:

    解决了。我给我的 LineItem 一个布尔值来表示它是最后一个,然后对其应用一个 bottomMargin。

    订单项:

    private class LineItem
    {
        public int sectionFirstPosition;
        public boolean isHeader;
        public boolean isLast;
        public Item item;
    
        public LineItem(Item item, boolean isHeader, int sectionFirstPosition)
        {
            this.isHeader = isHeader;
            this.item = item;
            this.sectionFirstPosition = sectionFirstPosition;
        }
    
        public void setLast()
        {
            isLast = true;
        }
    }
    

    设置最后一项:

        for (int i = 0; i < items.size(); i++)
        {
            long header = item.get(i).getTimestamp();
            if (lastHeader != header)
            {
                if(mItems.size() >= 1)
                {
                    mItems.get(mItems.size() - 1).setLast();
                }
                // Insert new header view and update section data.
                sectionFirstPosition = i + headerCount;
                lastHeader = header;
                headerCount += 1;
                mItems.add(new LineItem(items.get(i), true, sectionFirstPosition));
            }
            mItems.add(new LineItem(items.get(i), false, sectionFirstPosition));
        }
    

    设置下边距:

        if(item.isLast)
        {
            lp.bottomMargin = mContext.getResources().getDimensionPixelSize(R.dimen.section_margin);
        }else
        {
            lp.bottomMargin = 0;
        }
    

    【讨论】:

      猜你喜欢
      • 2021-03-24
      • 2015-03-17
      • 2021-04-06
      • 2020-01-04
      • 1970-01-01
      • 2021-07-05
      • 2013-09-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多