Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >带节的回收站,但每节只有页脚

带节的回收站,但每节只有页脚
EN

Stack Overflow用户
提问于 2016-07-13 04:39:56
回答 1查看 279关注 0票数 0

大家好,

我有一个回收视图,在第一个负载达到我想要的结果,这是分组所有的交易一个特定的卖方正在销售,由该卖家。

示例:

  • 鲍勃在卖表。
  • 鲍勃卖了辆车。
  • 鲍勃卖了匹马。
  • 按钮移除所有Bobs交易。

  • 吉姆卖房子。
  • 吉姆卖猴子。
  • 按钮以删除Jims的所有交易。

ect

示例:

问题是当我开始滚动回收视图的时候,一排排的物品就会混在一起。

我这样做的方式是,我有一个单一的布局,其中包含一个垂直线性布局,在LinearLayout下面有一个绿色按钮。

现在,我正在编程地膨胀每个行的视图,然后设置该行的数据。

这是我的onBindViewHolder:

代码语言:javascript
运行
AI代码解释
复制
      @Override
  public void onBindViewHolder(final ParentCartResultsViewHolder holder, int position) {

    final LinkedHashMap<Long, List<Trade>> mapTradesBySeller = CartUtils.getUserToFixedPriceTradeMap();
    mTradesBySeller = (new ArrayList<>(mapTradesBySeller.values())).get(holder.getAdapterPosition());

    if (mTradesBySeller != null) {
      for (Trade trade : mTradesBySeller) {
        View singleTrade = LayoutInflater.from(MyApplication.getAppContext()).inflate(R.layout.item_trade_details_include_row, holder.mLinearLayout, false);
        TextView tradeTitle = (TextView) singleTrade.findViewById(R.id.trade_details_include_trade_title);
        tradeTitle.setText(trade.getTitle());
        TextView endDate = (TextView) singleTrade.findViewById(R.id.trade_details_include_trade_ending_time);
        endDate.setText(trade.getUserAlias() + " : " + trade.getUserId());
        holder.mLinearLayout.addView(singleTrade);
      }
    }
  }

我的onCreateViewHolder:

代码语言:javascript
运行
AI代码解释
复制
      @Override
  public ParentCartResultsViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.cart_grouped_by_seller, parent, false);
    return new ParentCartResultsViewHolder(v);
  }

现在我想我知道问题是什么了,只是我想不出怎样才能解决这个问题。

问题在于创建视图并将它们添加到LinearLayout中的onBindViewHolder中,因为这会多次运行。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-07-18 14:16:38

您可以使用库SectionedRecyclerViewAdapter轻松地将数据分组为各节,并向每个节添加一个页脚。

首先创建一个节类:

代码语言:javascript
运行
AI代码解释
复制
class TradeSection extends StatelessSection {

    List<String> list;

    public TradeSection(List<String> list) {
        // call constructor with layout resources for this Section header, footer and items 
        super(-1, R.layout.section_item, R.layout.section_footer);

        // remove header
        this.setHasHeader(false);

        this.list = list;
    }

    @Override
    public int getContentItemsTotal() {
        return list.size(); // number of items of this section
    }

    @Override
    public RecyclerView.ViewHolder getItemViewHolder(View view) {
        // return a custom instance of ViewHolder for the items of this section
        return new MyItemViewHolder(view);
    }

    @Override
    public void onBindItemViewHolder(RecyclerView.ViewHolder holder, int position) {
        MyItemViewHolder itemHolder = (MyItemViewHolder) holder;

        // bind your view here
        itemHolder.tvItem.setText(list.get(position));
    }

    @Override
    public RecyclerView.ViewHolder getFooterViewHolder(View view) {
        return new MyFooterViewHolder(view);
    }

    @Override
    public void onBindFooterViewHolder(RecyclerView.ViewHolder holder) {
        MyFooterViewHolder footerHolder = (MyFooterViewHolder) holder;

        // bind your footer view here
        footerHolder.tvItem.setText(title);
    }
}

然后用您的部分设置RecyclerView:

代码语言:javascript
运行
AI代码解释
复制
// Create an instance of SectionedRecyclerViewAdapter 
SectionedRecyclerViewAdapter sectionAdapter = new SectionedRecyclerViewAdapter();

// Create your sections with the list of data for each year
TradeSection section1 = new TradeSection(bobDataList);
TradeSection section2 = new TradeSection(jimDataList);

// Add your Sections to the adapter
sectionAdapter.addSection(section1);
sectionAdapter.addSection(section2);

// Set up your RecyclerView with the SectionedRecyclerViewAdapter
RecyclerView recyclerView = (RecyclerView) findViewById(R.id.recyclerview);
recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
recyclerView.setAdapter(sectionAdapter);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38352021

复制
相关文章
随机模拟和统计主要结果分析命令
本期分享的这份大表格相当的复杂,整理起来费了点时间,但总算是对概率和统计回归的常用命令勾勒出大致框架。里面的有限函数开起来稍微有点陌生
巴山学长
2020/11/26
6030
画一个带统计检验的PCoA分析结果
PERMANOVA原理解释:这个统计检验可用于判断PCA/PCoA等的分群效果是否显著!
生信宝典
2022/01/18
1.2K0
画一个带统计检验的PCoA分析结果
java中pageInfo分页带条件查询+查询条件的回显「建议收藏」
代码如下:解析在下边 Jetbrains全家桶1年46,售后保障稳定 <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%-- Created by IntelliJ IDEA. User: Administrator Date: 2018/1/17 Time: 19:10 To chan
全栈程序员站长
2022/11/17
3.5K0
基于R软件的统计模拟
统计模拟即是计算机统计模拟,它实质上是计算机建模,而这里的计算机模型就是计算机方法、统计模型(如程序、流程图、算法等),它是架于计算机理论和实际问题之间的桥梁。它与统计建模的关系如下图。
统计学家
2019/04/10
3.4K0
基于R软件的统计模拟
C语言 | 统计选票结果的程序
例38:有三个候选人,每个选民只能投给一个人,要求用C语言编一个统计选票的程序,先后输入备选人的的名字,最后输出各人的得票结果。
小林C语言
2020/12/18
2K0
C语言 | 统计选票结果的程序
绘制带误差bar的统计图
df<-ToothGrowth #这里用的是R自带数据Toothgrowth
爱学习的小明明
2020/09/26
1.4K0
绘制带误差bar的统计图
Future,带返回执行结果的线程使用方式
FutureTask是Future的一种实现方式. private final int count; public Counter(int count) { this.count = count; } public void get() throws InterruptedException { // 假设执行一些耗时的操作 Thread.sleep(3000); System.out.println("counter:" + count); } long start = Sys
用户1215919
2018/02/27
1.2K0
画一个带统计检验的PcOA分析结果 (再进一步,配对比较)
PERMANOVA原理解释:这个统计检验可用于判断PCA/PCoA等的分群效果是否显著!
生信宝典
2022/01/18
1.5K0
画一个带统计检验的PcOA分析结果 (再进一步,配对比较)
SVD奇异值分解 中特征值与奇异值的数学理解与意义
更像是矩阵分解多一点,没有涉及到SVD的数学意义,这篇博客大概会写一些数学SVD的数学理解,以及SVD在PCA和推荐算法上面的应用。
大鹅
2021/06/16
2.3K0
Struts2 动态结果和带参数的跳转
完整代码:Struts16ActionResultsDemo.rar 1.动态结果。    有时我们需要在Action里取得我个要转跳的页面 看一下我们的struts.xml <?xml versio
lpxxn
2018/01/31
9560
Struts2 动态结果和带参数的跳转
带外攻击OOB(RCE无回显骚思路总结)
向服务器提交一个 payload,而服务器响应给我们相关的 response 信息。大家都叫它带内攻击,这些理论的东西,我们简单理解就好,这里我们就理解成单挑通信的通道为带内攻击,也就是整个测试过程或者说是交互过程,中间没有其外部的服务器参与,只有自己和目标服务器,那么就叫带内。
枪哥四海为家
2022/03/14
6K0
带外攻击OOB(RCE无回显骚思路总结)
通过 SeeTheStats 公开 Google Analytics 统计结果
广告商投放广告的时候,需要了解投放网站的流量,了解网站的流量的方法有很多,一般可以通过 Alexa,Google Ad Planer,但是这些都不是十分准确的,比如有个广告商通过 Alexa 的数据,以为我的博客一天的流量有 3W, 🙂 。 了解网站流量最直接的方法就是能够查看到统计工具的报表,如果要给广告商 Google Analytics 的统计结果,需要在 Google Analytics 后台操作给他的 Google 帐号赋权查看结果,这样非常麻烦。 SeeTheStats 就是一个使用 Googl
Denis
2023/04/14
4480
通过 SeeTheStats 公开 Google Analytics 统计结果
LeetCode 1409. 查询带键的排列(map模拟)
给你一个待查数组 queries ,数组中的元素为 1 到 m 之间的正整数。 请你根据以下规则处理所有待查项 queries[i](从 i=0 到 i=queries.length-1):
Michael阿明
2020/07/13
5610
一道快乐的井字棋带模拟
题目链接 吉首大学新生赛的带模拟 下井字棋问自己两步能不能赢 其实也不算很大233 代码长度3185 生涯之耻(不是 注释应该蛮清楚的(挠头 要注意的一点是如果初始局面自己已经获胜了 这个时候算wrong
wenzhuan
2022/08/15
2910
【WRF小技巧】WRF如何得到更好的模拟结果?
编者按:这是新开的一个系列,有时间会逐步将WRF官方培训的ppt挑选个人认为重要的进行翻译,以及结合个人的使用经验进行一些解释。由于个人水平有限,难免会出现偏差和错误,欢迎斧正。
自学气象人
2022/11/02
3.4K0
【WRF小技巧】WRF如何得到更好的模拟结果?
矩阵奇异分解奇异值分解定理
定理 设 非奇异,则存在正交矩阵P和Q,使得 其中 证明 因为A非奇异,所以 为实对称正定矩阵,于是存在正交矩阵Q使得, 为 的特征值 设x为非0特征向量,因为
用户1733462
2018/06/01
1.7K0
奇异的22∶78法则
为了增加matlab爱好者微信公众号内容的充实性,提供多元化多维度多视角阅读素材,让matlab爱好者的关注者受益更多。今后matlab爱好者推文包括但不限于matlab编程和科研相关内容,会增加一些涵盖生活、文化、经济和科技等方面的知识。欲获取更多丰富多彩的,请持续关注matlab爱好者!!!
巴山学长
2019/07/15
1K0
奇异的22∶78法则
AI数学基础之:奇异值和奇异值分解
奇异值是矩阵中的一个非常重要的概念,一般是通过奇异值分解的方法来得到的,奇异值分解是线性代数和矩阵论中一种重要的矩阵分解法,在统计学和信号处理中非常的重要。
用户2323866
2021/06/21
6300
点击加载更多

相似问题

从最大值日期得到最大值

11

S-最大值和最大值差

12

Django最大值函数不返回最大值

12

选择最大值而不使用最大值

125

如何使用最大值或最大值输出值?

24
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档