maxWidth = Math.max(maxWidth, getSuggestedMinimumWidth()); setMeasuredDimension( View.resolveSizeAndState(maxWidth, widthMeasureSpec, childState), View.resolveSizeAndState(maxHeight, heightMeasureSpec, childState << MEASURED_HEIGHT_STATE_SHIFT));
h = Math.max(h, getSuggestedMinimumHeight()); widthSize = View.resolveSizeAndState(w, widthMeasureSpec, 0); heightSize = View.resolveSizeAndState(h, heightMeasureSpec, 0);
@Override protected synchronized void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { super.onMeasure(widthMeasureSpec, heightMeasureSpec); int height = getMeasuredHeight(); int width = Math.round(height * mDrawable.getTileRatio() * getNumStars()); setMeasuredDimension(View.resolveSizeAndState(width, widthMeasureSpec, 0), height); }
public static int resolveSizeAndState(int size, int measureSpec, int childMeasuredState) { return View.resolveSizeAndState(size, measureSpec, childMeasuredState); }
width = View.resolveSizeAndState(width, widthMeasureSpec, 0); height = View.resolveSizeAndState(height, heightMeasureSpec, 0);
@Override protected synchronized void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { Drawable d = mCurrentDrawable; int dw = 0; int dh = 0; if (d != null) { dw = Math.max(mMinWidth, Math.min(mMaxWidth, d.getIntrinsicWidth())); dh = Math.max(mMinHeight, Math.min(mMaxHeight, d.getIntrinsicHeight())); } updateDrawableState(); dw += getPaddingLeft() + getPaddingRight(); dh += getPaddingTop() + getPaddingBottom(); if (IS_HONEYCOMB) { setMeasuredDimension(View.resolveSizeAndState(dw, widthMeasureSpec, 0), View.resolveSizeAndState(dh, heightMeasureSpec, 0)); } else { setMeasuredDimension(View.resolveSize(dw, widthMeasureSpec), View.resolveSize(dh, heightMeasureSpec)); } }
@Override protected synchronized void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { Drawable d = mCurrentDrawable; int dw = 0; int dh = 0; if (d != null) { dw = Math.max(mMinWidth, Math.min(mMaxWidth, d.getIntrinsicWidth())); dh = Math.max(mMinHeight, Math.min(mMaxHeight, d.getIntrinsicHeight())); } updateDrawableState(); dw += getPaddingLeft() + getPaddingRight(); dh += getPaddingTop() + getPaddingBottom(); if (IS_HONEYCOMB) { setMeasuredDimension(View.resolveSizeAndState(dw, widthMeasureSpec, 0), View.resolveSizeAndState(dh, heightMeasureSpec, 0)); } else { setMeasuredDimension(View.resolveSize(dw, widthMeasureSpec), View.resolveSize(dh, heightMeasureSpec)); } }
setMeasuredDimension(View.resolveSizeAndState((this.mMeasuredWidth + getPaddingLeft()) + getPaddingRight(), widthMeasureSpec, state), View.resolveSizeAndState((this.mMeasuredHeight + getPaddingTop()) + getPaddingBottom(), heightMeasureSpec, state << 16));