代码之家  ›  专栏  ›  技术社区  ›  Robin Dijkhof

重新发送回收视图

  •  0
  • Robin Dijkhof  · 技术社区  · 6 年前

    @Override
    public void onBindViewHolder(@NonNull RecyclerView.ViewHolder viewHolder, int position) {
        // get the list item
        MyListItemObject myListItemObject = getObject(i);
    
        //set some values
        viewHolder.prop1.setText(myListItemObject.prop1);
        viewHolder.prop2.setText(myListItemObject.prop2);
    
        //We got some setting from another object.
        if(externalObject.showProp2){
            viewHolder.prop2.setVisibility(View.VISIBLE);
        }else{
            viewHolder.prop2.setVisibility(View.GONE);
        }
    }
    

    通过一些外部设置值,我们决定显示或隐藏 prop2 true false notifyDatasetChanged()

    1 回复  |  直到 6 年前
        1
  •  2
  •   Cheticamp    6 年前

    notifyDatasetChanged() documentation

    你可以更改隐藏/显示 prop2 onBindViewHolder() .这应该适用于简单的更改。如果外部更改导致更复杂的布局更改,例如使用全新的视图保持架布局,则可以采用不同的方法。