代码之家  ›  专栏  ›  技术社区  ›  Jim

这会泄露视图持有者中的构造函数吗?

  •  0
  • Jim  · 技术社区  · 6 年前

    我在读一个如何在回收者视图中点击物品的方法,建议是:

    private class MyViewHolder extends RecyclerView.ViewHolder {  
        public MyViewHolder(View itemView) {  
            super(itemView);  
            itemView.setTag(this);  
            itemView.setOnClickListener(onItemClickListener);
        }  
    }  
    
    RecyclerView.ViewHolder viewHolder = (RecyclerView.ViewHolder) view.getTag();
    int position = viewHolder.getAdapterPosition();
    

    这种方法不会泄露构造函数吗?

    1 回复  |  直到 6 年前
        1
  •  0
  •   Reza.Abedini    6 年前

    我建议将holder类定义为private static,这样就不会泄漏。因为静态内部类的实例不包含对其外部类的隐式引用。