2016-04-11 14 views
1

ListView内のセル内にボタンがある場合、そのボタンのonClickListenerが親ビューへの参照を保持するのは安全ですか、それとも循環参照が発生するのでしょうか?アダプタ内の循環メモリ参照

例:

@Override 
public void bindView(final View view, Context context, Cursor cursor) { 
    final ViewHolder holder = (ViewHolder) view.getTag(); 

    holder.image.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      view.setBackgroundResource(R.drawable.bkg_amex); 
     } 

    }); 
} 

答えて

2

そのは循環参照になるだろうが、それは世界の終わりではありません。ガベージコレクタは、参照カウントの実装ではなくマークとスイープであるため、循環参照をキャッチできます。