本文整理汇总了Java中android.support.v4.view.ViewCompat.getMeasuredWidthAndState方法的典型用法代码示例。如果您正苦于以下问题:Java ViewCompat.getMeasuredWidthAndState方法的具体用法?Java ViewCompat.getMeasuredWidthAndState怎么用?Java ViewCompat.getMeasuredWidthAndState使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类android.support.v4.view.ViewCompat
的用法示例。
在下文中一共展示了ViewCompat.getMeasuredWidthAndState方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: onMeasure
import android.support.v4.view.ViewCompat; //导入方法依赖的package包/类
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int initialWidthMeasureSpec;
boolean stack = false;
int widthSize = MeasureSpec.getSize(widthMeasureSpec);
if (this.mAllowStacking) {
if (widthSize > this.mLastWidthSize && isStacked()) {
setStacked(false);
}
this.mLastWidthSize = widthSize;
}
boolean needsRemeasure = false;
if (isStacked() || MeasureSpec.getMode(widthMeasureSpec) != 1073741824) {
initialWidthMeasureSpec = widthMeasureSpec;
} else {
initialWidthMeasureSpec = MeasureSpec.makeMeasureSpec(widthSize, Integer.MIN_VALUE);
needsRemeasure = true;
}
super.onMeasure(initialWidthMeasureSpec, heightMeasureSpec);
if (this.mAllowStacking && !isStacked()) {
if (VERSION.SDK_INT < 11) {
int childWidthTotal = 0;
for (int i = 0; i < getChildCount(); i++) {
childWidthTotal += getChildAt(i).getMeasuredWidth();
}
if ((getPaddingLeft() + childWidthTotal) + getPaddingRight() > widthSize) {
stack = true;
}
} else if ((ViewCompat.getMeasuredWidthAndState(this) & -16777216) == ViewCompat.MEASURED_STATE_TOO_SMALL) {
stack = true;
}
if (stack) {
setStacked(true);
needsRemeasure = true;
}
}
if (needsRemeasure) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
}
}
示例2: shouldHandleMeasuredWidthTooSmall
import android.support.v4.view.ViewCompat; //导入方法依赖的package包/类
private static boolean shouldHandleMeasuredWidthTooSmall(View view, PercentLayoutInfo info) {
int state = ViewCompat.getMeasuredWidthAndState(view) & ViewCompat.MEASURED_STATE_MASK;
return state == ViewCompat.MEASURED_STATE_TOO_SMALL && info.widthPercent >= 0 &&
info.mPreservedParams.width == ViewGroup.LayoutParams.WRAP_CONTENT;
}