ADD week 5
This commit is contained in:
		| @@ -0,0 +1,270 @@ | ||||
| package androidx.constraintlayout.helper.widget; | ||||
|  | ||||
| import android.content.Context; | ||||
| import android.content.res.TypedArray; | ||||
| import android.util.AttributeSet; | ||||
| import android.util.SparseArray; | ||||
| import android.view.View; | ||||
| import androidx.constraintlayout.core.widgets.ConstraintWidget; | ||||
| import androidx.constraintlayout.core.widgets.HelperWidget; | ||||
| import androidx.constraintlayout.widget.ConstraintLayout; | ||||
| import androidx.constraintlayout.widget.ConstraintSet; | ||||
| import androidx.constraintlayout.widget.R; | ||||
| import androidx.constraintlayout.widget.VirtualLayout; | ||||
|  | ||||
| /* loaded from: classes.dex */ | ||||
| public class Flow extends VirtualLayout { | ||||
|     public static final int CHAIN_PACKED = 2; | ||||
|     public static final int CHAIN_SPREAD = 0; | ||||
|     public static final int CHAIN_SPREAD_INSIDE = 1; | ||||
|     public static final int HORIZONTAL = 0; | ||||
|     public static final int HORIZONTAL_ALIGN_CENTER = 2; | ||||
|     public static final int HORIZONTAL_ALIGN_END = 1; | ||||
|     public static final int HORIZONTAL_ALIGN_START = 0; | ||||
|     private static final String TAG = "Flow"; | ||||
|     public static final int VERTICAL = 1; | ||||
|     public static final int VERTICAL_ALIGN_BASELINE = 3; | ||||
|     public static final int VERTICAL_ALIGN_BOTTOM = 1; | ||||
|     public static final int VERTICAL_ALIGN_CENTER = 2; | ||||
|     public static final int VERTICAL_ALIGN_TOP = 0; | ||||
|     public static final int WRAP_ALIGNED = 2; | ||||
|     public static final int WRAP_CHAIN = 1; | ||||
|     public static final int WRAP_NONE = 0; | ||||
|     private androidx.constraintlayout.core.widgets.Flow mFlow; | ||||
|  | ||||
|     public Flow(Context context) { | ||||
|         super(context); | ||||
|     } | ||||
|  | ||||
|     public Flow(Context context, AttributeSet attrs) { | ||||
|         super(context, attrs); | ||||
|     } | ||||
|  | ||||
|     public Flow(Context context, AttributeSet attrs, int defStyleAttr) { | ||||
|         super(context, attrs, defStyleAttr); | ||||
|     } | ||||
|  | ||||
|     @Override // androidx.constraintlayout.widget.ConstraintHelper | ||||
|     public void resolveRtl(ConstraintWidget widget, boolean isRtl) { | ||||
|         this.mFlow.applyRtl(isRtl); | ||||
|     } | ||||
|  | ||||
|     @Override // androidx.constraintlayout.widget.ConstraintHelper, android.view.View | ||||
|     protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { | ||||
|         onMeasure(this.mFlow, widthMeasureSpec, heightMeasureSpec); | ||||
|     } | ||||
|  | ||||
|     @Override // androidx.constraintlayout.widget.VirtualLayout | ||||
|     public void onMeasure(androidx.constraintlayout.core.widgets.VirtualLayout layout, int widthMeasureSpec, int heightMeasureSpec) { | ||||
|         int mode = View.MeasureSpec.getMode(widthMeasureSpec); | ||||
|         int size = View.MeasureSpec.getSize(widthMeasureSpec); | ||||
|         int mode2 = View.MeasureSpec.getMode(heightMeasureSpec); | ||||
|         int size2 = View.MeasureSpec.getSize(heightMeasureSpec); | ||||
|         if (layout != null) { | ||||
|             layout.measure(mode, size, mode2, size2); | ||||
|             setMeasuredDimension(layout.getMeasuredWidth(), layout.getMeasuredHeight()); | ||||
|         } else { | ||||
|             setMeasuredDimension(0, 0); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     @Override // androidx.constraintlayout.widget.ConstraintHelper | ||||
|     public void loadParameters(ConstraintSet.Constraint constraint, HelperWidget child, ConstraintLayout.LayoutParams layoutParams, SparseArray<ConstraintWidget> mapIdToWidget) { | ||||
|         super.loadParameters(constraint, child, layoutParams, mapIdToWidget); | ||||
|         if (child instanceof androidx.constraintlayout.core.widgets.Flow) { | ||||
|             androidx.constraintlayout.core.widgets.Flow flow = (androidx.constraintlayout.core.widgets.Flow) child; | ||||
|             if (layoutParams.orientation != -1) { | ||||
|                 flow.setOrientation(layoutParams.orientation); | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     @Override // androidx.constraintlayout.widget.VirtualLayout, androidx.constraintlayout.widget.ConstraintHelper | ||||
|     protected void init(AttributeSet attrs) { | ||||
|         super.init(attrs); | ||||
|         this.mFlow = new androidx.constraintlayout.core.widgets.Flow(); | ||||
|         if (attrs != null) { | ||||
|             TypedArray obtainStyledAttributes = getContext().obtainStyledAttributes(attrs, R.styleable.ConstraintLayout_Layout); | ||||
|             int indexCount = obtainStyledAttributes.getIndexCount(); | ||||
|             for (int i = 0; i < indexCount; i++) { | ||||
|                 int index = obtainStyledAttributes.getIndex(i); | ||||
|                 if (index == R.styleable.ConstraintLayout_Layout_android_orientation) { | ||||
|                     this.mFlow.setOrientation(obtainStyledAttributes.getInt(index, 0)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_android_padding) { | ||||
|                     this.mFlow.setPadding(obtainStyledAttributes.getDimensionPixelSize(index, 0)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_android_paddingStart) { | ||||
|                     this.mFlow.setPaddingStart(obtainStyledAttributes.getDimensionPixelSize(index, 0)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_android_paddingEnd) { | ||||
|                     this.mFlow.setPaddingEnd(obtainStyledAttributes.getDimensionPixelSize(index, 0)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_android_paddingLeft) { | ||||
|                     this.mFlow.setPaddingLeft(obtainStyledAttributes.getDimensionPixelSize(index, 0)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_android_paddingTop) { | ||||
|                     this.mFlow.setPaddingTop(obtainStyledAttributes.getDimensionPixelSize(index, 0)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_android_paddingRight) { | ||||
|                     this.mFlow.setPaddingRight(obtainStyledAttributes.getDimensionPixelSize(index, 0)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_android_paddingBottom) { | ||||
|                     this.mFlow.setPaddingBottom(obtainStyledAttributes.getDimensionPixelSize(index, 0)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_flow_wrapMode) { | ||||
|                     this.mFlow.setWrapMode(obtainStyledAttributes.getInt(index, 0)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_flow_horizontalStyle) { | ||||
|                     this.mFlow.setHorizontalStyle(obtainStyledAttributes.getInt(index, 0)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_flow_verticalStyle) { | ||||
|                     this.mFlow.setVerticalStyle(obtainStyledAttributes.getInt(index, 0)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_flow_firstHorizontalStyle) { | ||||
|                     this.mFlow.setFirstHorizontalStyle(obtainStyledAttributes.getInt(index, 0)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_flow_lastHorizontalStyle) { | ||||
|                     this.mFlow.setLastHorizontalStyle(obtainStyledAttributes.getInt(index, 0)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_flow_firstVerticalStyle) { | ||||
|                     this.mFlow.setFirstVerticalStyle(obtainStyledAttributes.getInt(index, 0)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_flow_lastVerticalStyle) { | ||||
|                     this.mFlow.setLastVerticalStyle(obtainStyledAttributes.getInt(index, 0)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_flow_horizontalBias) { | ||||
|                     this.mFlow.setHorizontalBias(obtainStyledAttributes.getFloat(index, 0.5f)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_flow_firstHorizontalBias) { | ||||
|                     this.mFlow.setFirstHorizontalBias(obtainStyledAttributes.getFloat(index, 0.5f)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_flow_lastHorizontalBias) { | ||||
|                     this.mFlow.setLastHorizontalBias(obtainStyledAttributes.getFloat(index, 0.5f)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_flow_firstVerticalBias) { | ||||
|                     this.mFlow.setFirstVerticalBias(obtainStyledAttributes.getFloat(index, 0.5f)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_flow_lastVerticalBias) { | ||||
|                     this.mFlow.setLastVerticalBias(obtainStyledAttributes.getFloat(index, 0.5f)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_flow_verticalBias) { | ||||
|                     this.mFlow.setVerticalBias(obtainStyledAttributes.getFloat(index, 0.5f)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_flow_horizontalAlign) { | ||||
|                     this.mFlow.setHorizontalAlign(obtainStyledAttributes.getInt(index, 2)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_flow_verticalAlign) { | ||||
|                     this.mFlow.setVerticalAlign(obtainStyledAttributes.getInt(index, 2)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_flow_horizontalGap) { | ||||
|                     this.mFlow.setHorizontalGap(obtainStyledAttributes.getDimensionPixelSize(index, 0)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_flow_verticalGap) { | ||||
|                     this.mFlow.setVerticalGap(obtainStyledAttributes.getDimensionPixelSize(index, 0)); | ||||
|                 } else if (index == R.styleable.ConstraintLayout_Layout_flow_maxElementsWrap) { | ||||
|                     this.mFlow.setMaxElementsWrap(obtainStyledAttributes.getInt(index, -1)); | ||||
|                 } | ||||
|             } | ||||
|             obtainStyledAttributes.recycle(); | ||||
|         } | ||||
|         this.mHelperWidget = this.mFlow; | ||||
|         validateParams(); | ||||
|     } | ||||
|  | ||||
|     public void setOrientation(int orientation) { | ||||
|         this.mFlow.setOrientation(orientation); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setPadding(int padding) { | ||||
|         this.mFlow.setPadding(padding); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setPaddingLeft(int paddingLeft) { | ||||
|         this.mFlow.setPaddingLeft(paddingLeft); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setPaddingTop(int paddingTop) { | ||||
|         this.mFlow.setPaddingTop(paddingTop); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setPaddingRight(int paddingRight) { | ||||
|         this.mFlow.setPaddingRight(paddingRight); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setPaddingBottom(int paddingBottom) { | ||||
|         this.mFlow.setPaddingBottom(paddingBottom); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setLastHorizontalStyle(int style) { | ||||
|         this.mFlow.setLastHorizontalStyle(style); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setLastVerticalStyle(int style) { | ||||
|         this.mFlow.setLastVerticalStyle(style); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setLastHorizontalBias(float bias) { | ||||
|         this.mFlow.setLastHorizontalBias(bias); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setLastVerticalBias(float bias) { | ||||
|         this.mFlow.setLastVerticalBias(bias); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setWrapMode(int mode) { | ||||
|         this.mFlow.setWrapMode(mode); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setHorizontalStyle(int style) { | ||||
|         this.mFlow.setHorizontalStyle(style); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setVerticalStyle(int style) { | ||||
|         this.mFlow.setVerticalStyle(style); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setHorizontalBias(float bias) { | ||||
|         this.mFlow.setHorizontalBias(bias); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setVerticalBias(float bias) { | ||||
|         this.mFlow.setVerticalBias(bias); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setFirstHorizontalStyle(int style) { | ||||
|         this.mFlow.setFirstHorizontalStyle(style); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setFirstVerticalStyle(int style) { | ||||
|         this.mFlow.setFirstVerticalStyle(style); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setFirstHorizontalBias(float bias) { | ||||
|         this.mFlow.setFirstHorizontalBias(bias); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setFirstVerticalBias(float bias) { | ||||
|         this.mFlow.setFirstVerticalBias(bias); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setHorizontalAlign(int align) { | ||||
|         this.mFlow.setHorizontalAlign(align); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setVerticalAlign(int align) { | ||||
|         this.mFlow.setVerticalAlign(align); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setHorizontalGap(int gap) { | ||||
|         this.mFlow.setHorizontalGap(gap); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setVerticalGap(int gap) { | ||||
|         this.mFlow.setVerticalGap(gap); | ||||
|         requestLayout(); | ||||
|     } | ||||
|  | ||||
|     public void setMaxElementsWrap(int max) { | ||||
|         this.mFlow.setMaxElementsWrap(max); | ||||
|         requestLayout(); | ||||
|     } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user