package com.beloo.widget.chipslayoutmanager.util.log;
|
|
import android.util.SparseArray;
|
import android.view.View;
|
|
import com.beloo.widget.chipslayoutmanager.anchor.AnchorViewState;
|
|
import java.util.Locale;
|
|
class FillLogger implements IFillLogger {
|
private SparseArray<View> viewCache;
|
private int requestedItems;
|
private int recycledItems;
|
private int startCacheSize;
|
private int recycledSize;
|
|
FillLogger(SparseArray<View> viewCache) {
|
this.viewCache = viewCache;
|
}
|
|
@Override
|
public void onStartLayouter(int startPosition) {
|
requestedItems = 0;
|
recycledItems = 0;
|
startCacheSize = viewCache.size();
|
|
Log.d("fillWithLayouter", "start position = " + startPosition, LogSwitcherFactory.FILL);
|
Log.d("fillWithLayouter", "cached items = " + startCacheSize, LogSwitcherFactory.FILL);
|
}
|
|
@Override
|
public void onItemRequested() {
|
requestedItems++;
|
}
|
|
@Override
|
public void onItemRecycled() {
|
recycledItems++;
|
}
|
|
@Override
|
public void onFinishedLayouter() {
|
Log.d("fillWithLayouter",
|
String.format(Locale.getDefault(), "reattached items = %d : requested items = %d recycledItems = %d", startCacheSize - viewCache.size(), requestedItems, recycledItems),
|
LogSwitcherFactory.FILL);
|
}
|
|
@Override
|
public void onAfterLayouter() {
|
recycledSize = viewCache.size();
|
}
|
|
@Override
|
public void onRemovedAndRecycled(int position) {
|
Log.d("fillWithLayouter", " recycle position =" + viewCache.keyAt(position), LogSwitcherFactory.FILL);
|
recycledSize++;
|
}
|
|
@Override
|
public void onAfterRemovingViews() {
|
Log.d("fillWithLayouter", "recycled count = " + recycledSize, LogSwitcherFactory.FILL);
|
}
|
|
@Override
|
public void onBeforeLayouter(AnchorViewState anchorView) {
|
if (anchorView.getAnchorViewRect() != null) {
|
Log.d("fill", "anchorPos " + anchorView.getPosition(), LogSwitcherFactory.FILL);
|
Log.d("fill", "anchorTop " + anchorView.getAnchorViewRect().top, LogSwitcherFactory.FILL);
|
}
|
}
|
|
}
|