本文整理汇总了Java中android.support.v7.widget.RecyclerView.getMeasuredWidth方法的典型用法代码示例。如果您正苦于以下问题:Java RecyclerView.getMeasuredWidth方法的具体用法?Java RecyclerView.getMeasuredWidth怎么用?Java RecyclerView.getMeasuredWidth使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类android.support.v7.widget.RecyclerView
的用法示例。
在下文中一共展示了RecyclerView.getMeasuredWidth方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: drawHorizontal
import android.support.v7.widget.RecyclerView; //导入方法依赖的package包/类
private void drawHorizontal(Canvas canvas, RecyclerView parent) {
final int left = parent.getPaddingLeft();
final int right = parent.getMeasuredWidth() - parent.getPaddingRight();
final int childSize = parent.getChildCount();
for (int i = 0; i < childSize; i++) {
final View child = parent.getChildAt(i);
RecyclerView.LayoutParams layoutParams = (RecyclerView.LayoutParams) child.getLayoutParams();
final int top = child.getBottom() + layoutParams.bottomMargin;
final int bottom = top + mDividerHeight;
if (mDivider != null) {
mDivider.setBounds(left, top, right, bottom);
mDivider.draw(canvas);
}
if (mPaint != null) {
canvas.drawRect(left, top, right, bottom, mPaint);
}
}
}
示例2: fireScrollEvent
import android.support.v7.widget.RecyclerView; //导入方法依赖的package包/类
private void fireScrollEvent(RecyclerView recyclerView, int offsetX, int offsetY) {
int contentWidth = recyclerView.getMeasuredWidth() + recyclerView.computeHorizontalScrollRange();
int contentHeight = recyclerView.computeVerticalScrollRange();
Map<String, Object> event = new HashMap<>(2);
Map<String, Object> contentSize = new HashMap<>(2);
Map<String, Object> contentOffset = new HashMap<>(2);
contentSize.put(Constants.Name.WIDTH, WXViewUtils.getWebPxByWidth(contentWidth, getInstance().getInstanceViewPortWidth()));
contentSize.put(Constants.Name.HEIGHT, WXViewUtils.getWebPxByWidth(contentHeight, getInstance().getInstanceViewPortWidth()));
contentOffset.put(Constants.Name.X, - WXViewUtils.getWebPxByWidth(offsetX, getInstance().getInstanceViewPortWidth()));
contentOffset.put(Constants.Name.Y, - WXViewUtils.getWebPxByWidth(offsetY, getInstance().getInstanceViewPortWidth()));
event.put(Constants.Name.CONTENT_SIZE, contentSize);
event.put(Constants.Name.CONTENT_OFFSET, contentOffset);
fireEvent(Constants.Event.SCROLL, event);
}
示例3: drawVertical
import android.support.v7.widget.RecyclerView; //导入方法依赖的package包/类
/**
* 绘制纵向 item 分割线
*
* @param canvas
* @param parent
*/
private void drawVertical(Canvas canvas, RecyclerView parent) {
final int left = parent.getPaddingLeft();
final int right = parent.getMeasuredWidth() - parent.getPaddingRight();
final int childSize = parent.getChildCount();
for (int i = 0; i < childSize; i++) {
View child = parent.getChildAt(i);
RecyclerView.LayoutParams layoutParams = (RecyclerView.LayoutParams) child.getLayoutParams();
int top = child.getBottom() + layoutParams.bottomMargin;
int bottom = top;
if (i < childSize - 1) {
bottom = top + mItemSize;
}
canvas.drawRect(left, top, right, bottom, mPaint);
}
}
示例4: drawHorizontal
import android.support.v7.widget.RecyclerView; //导入方法依赖的package包/类
private void drawHorizontal(Canvas canvas, RecyclerView parent) {
final int left = parent.getPaddingLeft();
final int right = parent.getMeasuredWidth() - parent.getPaddingRight();
final int childSize = parent.getChildCount();
//childSize-1 最后一个item不显示分割线
for (int i = 0; i < childSize-1; i++) {
final View child = parent.getChildAt(i);
RecyclerView.LayoutParams layoutParams = (RecyclerView.LayoutParams) child.getLayoutParams();
final int top = child.getBottom() + layoutParams.bottomMargin;
final int bottom = top + mDividerHeight;
if (mDivider != null) {
mDivider.setBounds(left, top, right, bottom);
mDivider.draw(canvas);
}
if (mPaint != null) {
canvas.drawRect(left, top, right, bottom, mPaint);
}
}
}
示例5: drawVertical
import android.support.v7.widget.RecyclerView; //导入方法依赖的package包/类
/**
* 绘制垂直分割线
*/
private void drawVertical(Canvas canvas, RecyclerView parent) {
int left = parent.getPaddingLeft() + mMarginLeft;
int right = parent.getMeasuredWidth() - parent.getPaddingRight() - mMarginRight;
int childSize = parent.getChildCount();
for (int i = 0; i < childSize; i++) {
View child = parent.getChildAt(i);
RecyclerView.LayoutParams layoutParams = (RecyclerView.LayoutParams) child.getLayoutParams();
int top = child.getBottom() + layoutParams.bottomMargin;
int bottom = top + mDividerWidth;
if (mDividerDrawable != null) {
//如果是图片分割线,绘制图片
mDividerDrawable.setBounds(left, top, right, bottom);
mDividerDrawable.draw(canvas);
} else {
//绘制矩形
canvas.drawRect(left, top, right, bottom, mPaint);
}
}
}
示例6: drawVertical
import android.support.v7.widget.RecyclerView; //导入方法依赖的package包/类
/**
* 绘制纵向 item 分割线
*
* @param canvas
* @param parent
*/
private void drawVertical(Canvas canvas, RecyclerView parent) {
final int left = parent.getPaddingLeft();
final int right = parent.getMeasuredWidth() - parent.getPaddingRight();
final int childSize = parent.getChildCount();
for (int i = 0; i < childSize; i++) {
final View child = parent.getChildAt(i);
RecyclerView.LayoutParams layoutParams = (RecyclerView.LayoutParams) child.getLayoutParams();
final int top = child.getBottom() + layoutParams.bottomMargin;
final int bottom = top + mItemSize;
canvas.drawRect(left, top, right, bottom, mPaint);
}
}
示例7: drawHorizontal
import android.support.v7.widget.RecyclerView; //导入方法依赖的package包/类
private void drawHorizontal(Canvas c, RecyclerView parent) {
final int left = parent.getPaddingLeft();
final int right = parent.getMeasuredWidth() - parent.getPaddingRight();
final int childCount = parent.getChildCount();
for (int i = 0; i < childCount; i++) {
final View child = parent.getChildAt(i);
RecyclerView.LayoutParams layoutParams = (RecyclerView.LayoutParams) child.getLayoutParams();
final int top = child.getBottom() + layoutParams.bottomMargin;
final int bottom = top + mDividerHeight;
mDivider.setBounds(left, top, right, bottom);
mDivider.draw(c);
}
}
示例8: drawHorizontal
import android.support.v7.widget.RecyclerView; //导入方法依赖的package包/类
/**
* 绘制横向 item 分割线。左、上、右都是可计算的,下需要获取给定的高度值
* @param canvas
* @param parent
*/
private void drawHorizontal(Canvas canvas, RecyclerView parent) {
//左边:到父容器的left内间距位置值
final int left = parent.getPaddingLeft();
//右边:到父容器的right内间距位置值
final int right = parent.getMeasuredWidth() - parent.getPaddingRight();
final int childSize = parent.getChildCount();
//循环绘制每条分割线
for (int i = 0; i < childSize; i++) {
final View child = parent.getChildAt(i);
RecyclerView.LayoutParams layoutParams = (RecyclerView.LayoutParams) child.getLayoutParams();
//上边:具体的某条分割线的左边以child的(bottom+bottomMargin)位置值
final int top = child.getBottom() + layoutParams.bottomMargin;
//下边:根据类型判断
int bottom;
switch (drawType){
case USEPAINT://构造方法声明使用画笔绘制
//下边:top加上指定的高度
bottom = top + mPaintDividerLength;
if (mPaint != null) {
canvas.drawRect(left, top, right, bottom, mPaint);
}
break;
case USEDRAWABLE://构造方法声明使用drawable
if (mDrawableDivider != null) {
//下边:top加上指定的高度
bottom = top + mDrawableDivider.getIntrinsicHeight();
mDrawableDivider.setBounds(left, top, right, bottom);
mDrawableDivider.draw(canvas);
}
break;
}
}
}
示例9: isItemsFitOnScreen
import android.support.v7.widget.RecyclerView; //导入方法依赖的package包/类
@Override
public boolean isItemsFitOnScreen(RecyclerView recyclerView, int itemsSize) {
calcItemWidth(recyclerView);
int itemsWidth = itemWidth * (itemsSize);
int containerWidth = recyclerView.getMeasuredWidth();
return containerWidth >= itemsWidth;
}
示例10: drawVertical
import android.support.v7.widget.RecyclerView; //导入方法依赖的package包/类
/**
* 绘制纵向 item 分割线
*/
private void drawVertical(Canvas canvas, RecyclerView parent) {
final int left = dividerMargin;
final int right = parent.getMeasuredWidth() - dividerMargin;
final int childSize = parent.getChildCount();
for (int i = 0; i < childSize; i++) {
final View child = parent.getChildAt(i);
RecyclerView.LayoutParams layoutParams = (RecyclerView.LayoutParams) child.getLayoutParams();
final int top = child.getBottom() + layoutParams.bottomMargin;
final int bottom = top + dividerHeight;
canvas.drawRect(left, top, right, bottom, mPaint);
}
}