本文整理汇总了Java中android.support.v7.widget.RecyclerView.getMeasuredHeight方法的典型用法代码示例。如果您正苦于以下问题:Java RecyclerView.getMeasuredHeight方法的具体用法?Java RecyclerView.getMeasuredHeight怎么用?Java RecyclerView.getMeasuredHeight使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类android.support.v7.widget.RecyclerView
的用法示例。
在下文中一共展示了RecyclerView.getMeasuredHeight方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: drawHorizontal
import android.support.v7.widget.RecyclerView; //导入方法依赖的package包/类
/**
* 绘制横向水平分割线
*/
private void drawHorizontal(Canvas canvas, RecyclerView parent) {
int top = parent.getPaddingTop();
int bottom = parent.getMeasuredHeight() - parent.getPaddingBottom();
int childSize = parent.getChildCount();
for (int i = 0; i < childSize; i++) {
View child = parent.getChildAt(i);
RecyclerView.LayoutParams layoutParams = (RecyclerView.LayoutParams) child.getLayoutParams();
int left = child.getRight() + layoutParams.rightMargin;
int right = left + mDividerWidth;
if (mDividerDrawable != null) {
//如果是图片分割线,绘制图片
mDividerDrawable.setBounds(left, top, right, bottom);
canvas.drawPaint(mPaint);
mDividerDrawable.draw(canvas);
} else {
//绘制矩形
canvas.drawRect(left, top, right, bottom, mPaint);
}
}
}
示例2: drawVertical
import android.support.v7.widget.RecyclerView; //导入方法依赖的package包/类
private void drawVertical(Canvas canvas, RecyclerView parent) {
final int top = parent.getPaddingTop();
final int bottom = parent.getMeasuredHeight() - parent.getPaddingBottom();
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 left = child.getRight() + layoutParams.rightMargin;
final int right = left + mDividerHeight;
if (mDivider != null) {
mDivider.setBounds(left, top, right, bottom);
mDivider.draw(canvas);
}
if (mPaint != null) {
canvas.drawRect(left, top, right, bottom, mPaint);
}
}
}
示例3: drawHorizontal
import android.support.v7.widget.RecyclerView; //导入方法依赖的package包/类
/**
* 绘制横向 item 分割线
*
* @param canvas
* @param parent
*/
private void drawHorizontal(Canvas canvas, RecyclerView parent) {
final int top = parent.getPaddingTop();
final int bottom = parent.getMeasuredHeight() - parent.getPaddingBottom();
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 left = child.getRight() + layoutParams.rightMargin;
final int right = left + mItemSize;
canvas.drawRect(left, top, right, bottom, mPaint);
}
}
示例4: drawHorizontal
import android.support.v7.widget.RecyclerView; //导入方法依赖的package包/类
/**
* 绘制横向 item 分割线
*
* @param canvas
* @param parent
*/
private void drawHorizontal(Canvas canvas, RecyclerView parent) {
final int top = parent.getPaddingTop();
final int bottom = parent.getMeasuredHeight() - parent.getPaddingBottom();
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 left = child.getRight() + layoutParams.rightMargin;
final int right = left + mItemSize;
canvas.drawRect(left, top, right, bottom, mPaint);
}
}
示例5: drawVertical
import android.support.v7.widget.RecyclerView; //导入方法依赖的package包/类
private void drawVertical(Canvas c, RecyclerView parent){
final int top = parent.getPaddingTop();
final int bottom = parent.getMeasuredHeight() - parent.getPaddingBottom();
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 left = child.getRight() + layoutParams.rightMargin;
final int right = left + mDividerWidth;
mDivider.setBounds(left, top, right, bottom);
mDivider.draw(c);
}
}
示例6: drawVertical
import android.support.v7.widget.RecyclerView; //导入方法依赖的package包/类
/**
* 绘制纵向 item 分割线。上、下、左都是可计算的,右侧需要获取给定的宽度值
* @param canvas
* @param parent
*/
private void drawVertical(Canvas canvas, RecyclerView parent) {
//上边:到父容器的top内间距位置值
final int top = parent.getPaddingTop();
//下边:到父容器的bottom内间距位置值
final int bottom = parent.getMeasuredHeight() - parent.getPaddingBottom();
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的(right+rightMargin)位置值
final int left = child.getRight() + layoutParams.rightMargin;
//右边:根据类型判断
int right;
switch (drawType){
case USEPAINT://构造方法声明使用画笔绘制
//右边:left加上指定的宽度
right = left + mPaintDividerLength;
if (mPaint != null) {
canvas.drawRect(left, top, right, bottom, mPaint);
}
break;
case USEDRAWABLE://构造方法声明使用drawable
if (mDrawableDivider != null) {
//右边:left加上指定的宽度
right = left + mDrawableDivider.getIntrinsicWidth();
mDrawableDivider.setBounds(left, top, right, bottom);
mDrawableDivider.draw(canvas);
}
break;
}
}
}