RecyclerView:切换所有可见行的子项的可见性

RecyclerView: toggling visibility of a children of all visible rows

我有一个水平 RecyclerView。 我想做的是,在运行时从适配器中隐藏所有项目的 2 个 TextView。

所以,我想做的是循环遍历所有可见项,获取它们的布局,然后更改每个子项中某些 TextView 的可见性。

您可以将其视为 "simple layout" 与 "Complex layout" 的切换。

我知道我应该通过分配的 RecyclerView.Adapter 检索 RecyclerView 子级,但这真的是最好的解决方案吗?

非常感谢您的帮助。

我的代码:

public ViewHolder(View v) {
    super(v);
    // Some logic here to find children
    v.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            // Get the adapter here, loop all visible children, and change visibility?
            // Following line will do for clicked item only:
            tvwind.setVisibility(tvwind.getVisibility()==View.VISIBLE?View.GONE:View.VISIBLE);
        }
    });
}

从上面的代码,我可以改变点击项目的可见性,但不是所有可见的项目。

如前所述,这可以通过在适配器的 onBindViewHolder() 内部切换可见性来实现。