public DrawableContainerConstantState( DrawableContainerConstantState state, DrawableContainer owner) { this.owner = owner; if (state != null) { List<Drawable> drawables = new ArrayList<>(); for (Drawable drawable : state.getDrawables()) { Drawable copyDrawable = drawable.copy(); copyDrawable.setDelegate(owner); drawables.add(copyDrawable); } this.drawables = drawables; this.constantIntrinsicSize = state.constantIntrinsicSize; this.constantMinimumSize = state.constantMinimumSize; this.constantSizeComputed = state.constantSizeComputed; this.haveStateful = state.haveStateful; this.stateful = state.stateful; this.paddingComputed = state.paddingComputed; this.padding = state.padding; this.hasPadding = state.hasPadding; } else { this.drawables = new ArrayList<>(); } }
public void addChildDrawable(Drawable drawable) { drawables.add(drawable); drawable.setDelegate(this.owner); this.haveStateful = false; this.constantSizeComputed = false; this.paddingComputed = false; }