public void setup( RecyclerView rv, RecyclerView.ViewHolder vh, DraggingItemInfo info, int lastTouchX, int lastTouchY, ItemDraggableRange wrappedAdapterPange, ItemDraggableRange rootAdapterRange, boolean checkCanSwap) { this.rv = rv; this.draggingItemInfo = info; this.draggingItem = vh; this.lastTouchX = lastTouchX; this.lastTouchY = lastTouchY; this.wrappedAdapterRange = wrappedAdapterPange; this.rootAdapterRange = rootAdapterRange; this.checkCanSwap = checkCanSwap; this.layoutType = CustomRecyclerViewUtils.getLayoutType(rv); this.vertical = CustomRecyclerViewUtils.extractOrientation(this.layoutType) == CustomRecyclerViewUtils.ORIENTATION_VERTICAL; this.overlayItemLeft = this.overlayItemLeftNotClipped = lastTouchX - info.grabbedPositionX; this.overlayItemTop = this.overlayItemTopNotClipped = lastTouchY - info.grabbedPositionY; if (this.vertical) { this.overlayItemLeft = Math.max(this.overlayItemLeft, rv.getPaddingLeft()); this.overlayItemLeft = Math.min(this.overlayItemLeft, Math.max(0, rv.getWidth() - rv.getPaddingRight() - draggingItemInfo.width)); } else { this.overlayItemTop = Math.max(this.overlayItemTop, rv.getPaddingTop()); this.overlayItemTop = Math.min(this.overlayItemTop, Math.max(0, rv.getHeight() - rv.getPaddingBottom() - draggingItemInfo.height)); } }
/** * @param drawer * @return */ public AccountHeaderBuilder withDrawer(@NonNull Drawer drawer) { this.mDrawer = drawer; //set the top padding to 0 as this would happen when the AccountHeader is created during Drawer build time drawer.getRecyclerView().setPadding(drawer.getRecyclerView().getPaddingLeft(), 0, drawer.getRecyclerView().getPaddingRight(), drawer.getRecyclerView().getPaddingBottom()); return this; }
private static void updateGlowSize(RecyclerView rv, EdgeEffect glow, int dir) { int width = rv.getMeasuredWidth(); int height = rv.getMeasuredHeight(); if (getClipToPadding(rv)) { width -= rv.getPaddingLeft() + rv.getPaddingRight(); height -= rv.getPaddingTop() + rv.getPaddingBottom(); } width = Math.max(0, width); height = Math.max(0, height); if (dir == EDGE_LEFT || dir == EDGE_RIGHT) { int t = width; //noinspection SuspiciousNameCombination width = height; height = t; } glow.setSize(width, height); }
c.rotate(180); if (clipToPadding) { c.translate(-parent.getWidth() + parent.getPaddingRight(), -parent.getHeight() + parent.getPaddingBottom()); } else { c.translate(-parent.getWidth(), -parent.getHeight());
mTranslationBottomLimit -= rv.getPaddingBottom(); mTranslationLeftLimit = -mDraggingItemInfo.width; mTranslationRightLimit = rv.getWidth();
} else { //horizontal top = parent.getPaddingTop(); bottom = parent.getHeight() - parent.getPaddingBottom();
final int paddingTop = (!fc.vertical) ? fc.rv.getPaddingTop() : 0; final int paddingRight = (fc.vertical) ? fc.rv.getPaddingRight() : 0; final int paddingBottom = (!fc.vertical) ? fc.rv.getPaddingBottom() : 0; final int columnWidth = (width - paddingLeft - paddingRight) / spanCount; final int rowHeight = (height - paddingTop - paddingBottom) / spanCount;
@Override void scrollToPosition(RecyclerView list, int pos) { if (list.getLayoutManager() instanceof LinearLayoutManager) { // Centering item in its parent final LinearLayoutManager manager = (LinearLayoutManager) list.getLayoutManager(); final boolean isHorizontal = manager.getOrientation() == LinearLayoutManager.HORIZONTAL; int offset = isHorizontal ? (list.getWidth() - list.getPaddingLeft() - list.getPaddingRight()) / 2 : (list.getHeight() - list.getPaddingTop() - list.getPaddingBottom()) / 2; final RecyclerView.ViewHolder holder = list.findViewHolderForAdapterPosition(pos); if (holder != null) { final View view = holder.itemView; offset -= isHorizontal ? view.getWidth() / 2 : view.getHeight() / 2; } manager.scrollToPositionWithOffset(pos, offset); } else { list.scrollToPosition(pos); } }
} else if (mDy > 0) { final int bottomDiff = curY + mSelected.itemView.getHeight() + mTmpRect.bottom - (mRecyclerView.getHeight() - mRecyclerView.getPaddingBottom()); if (bottomDiff > 0) { scrollY = bottomDiff;
drawer.mRecyclerView.setPadding(drawer.mRecyclerView.getPaddingLeft(), 0, drawer.mRecyclerView.getPaddingRight(), drawer.mRecyclerView.getPaddingBottom());
mRecyclerView.setPadding(mRecyclerView.getPaddingLeft(), UIUtils.getStatusBarHeight(ctx), mRecyclerView.getPaddingRight(), mRecyclerView.getPaddingBottom());
/** * method to replace a previous set header * * @param view * @param padding * @param divider * @param height */ public void setHeader(@NonNull View view, boolean padding, boolean divider, DimenHolder height) { mDrawerBuilder.getHeaderAdapter().clear(); if (padding) { mDrawerBuilder.getHeaderAdapter().add(new ContainerDrawerItem().withView(view).withDivider(divider).withHeight(height).withViewPosition(ContainerDrawerItem.Position.TOP)); } else { mDrawerBuilder.getHeaderAdapter().add(new ContainerDrawerItem().withView(view).withDivider(divider).withHeight(height).withViewPosition(ContainerDrawerItem.Position.NONE)); } //we need to set the padding so the header starts on top mDrawerBuilder.mRecyclerView.setPadding(mDrawerBuilder.mRecyclerView.getPaddingLeft(), 0, mDrawerBuilder.mRecyclerView.getPaddingRight(), mDrawerBuilder.mRecyclerView.getPaddingBottom()); }
+ ViewUtils.getActionBarSize(HomeActivity.this), grid.getPaddingBottom() + insets.getSystemWindowInsetBottom()); filtersList.getPaddingEnd() + (ltr ? insets.getSystemWindowInsetRight() : 0), filtersList.getPaddingBottom() + insets.getSystemWindowInsetBottom());
if (maxBottom >= recyclerView.getHeight() - recyclerView.getPaddingBottom()) { recyclerView.scrollToPosition(toPos);
@Override public void onLayoutChange(View v, int left, int top, int right, int bottom, int oldLeft, int oldTop, int oldRight, int oldBottom) { if (oldLeft == left && oldTop == top && oldRight == right && oldBottom == bottom && mRecyclerView.getPaddingBottom() == oldPadding) return; oldPadding = mRecyclerView.getPaddingBottom(); if (mDrawerLayout.isDrawerVisible(GravityCompat.START)) updateScrollPosition(); } });
private void measureView(@NonNull RecyclerView parent, @NonNull View header) { int widthSpec = View.MeasureSpec.makeMeasureSpec(parent.getWidth(), View.MeasureSpec.EXACTLY); int heightSpec = View.MeasureSpec.makeMeasureSpec(parent.getHeight(), View.MeasureSpec.UNSPECIFIED); int childWidth = ViewGroup.getChildMeasureSpec(widthSpec, parent.getPaddingLeft() + parent.getPaddingRight(), header.getLayoutParams().width); int childHeight = ViewGroup.getChildMeasureSpec(heightSpec, parent.getPaddingTop() + parent.getPaddingBottom(), header.getLayoutParams().height); header.measure(childWidth, childHeight); header.layout(0, 0, header.getMeasuredWidth(), header.getMeasuredHeight()); }
private void drawHorizontal(Canvas c, RecyclerView parent) { final int top = parent.getPaddingTop() + mStartMargin; final int bottom = parent.getHeight() - parent.getPaddingBottom() - mEndMargin; final int childCount = parent.getChildCount() - 1; for (int i = 0; i < childCount; i++) { final View child = parent.getChildAt(i); final LayoutParams params = (LayoutParams) child .getLayoutParams(); final int left = child.getRight() + params.rightMargin + Math.round(child.getTranslationX()); final int right = left + mDivider.getIntrinsicHeight(); mDivider.setBounds(left, top, right, bottom); mDivider.draw(c); } }
int getAvailableScrollHeight() { int visibleHeight = materialScrollBar.recyclerView.getHeight(); int scrollHeight; if(customScroller != null) { scrollHeight = materialScrollBar.recyclerView.getPaddingTop() + customScroller.getTotalDepth() + materialScrollBar.recyclerView.getPaddingBottom(); } else { scrollHeight = materialScrollBar.recyclerView.getPaddingTop() + getRowCount() * scrollPosState.rowHeight + materialScrollBar.recyclerView.getPaddingBottom(); } return scrollHeight - visibleHeight; }
public void resizeBanner() { if (showViewPager() && !hideBanner()) { ViewGroup.LayoutParams layoutParams = mViewPagerParent.getLayoutParams(); layoutParams.height = AppSettings.getBannerSize(getActivity()); mRecyclerView.setPadding(mRecyclerView.getPaddingLeft(), layoutParams.height, mRecyclerView.getPaddingRight(), mRecyclerView.getPaddingBottom()); mViewPagerParent.requestLayout(); } }
@NonNull @Override public final RecyclerView onCreateRecyclerView(final LayoutInflater inflater, final ViewGroup parent, final Bundle savedInstanceState) { RecyclerView recyclerView = super.onCreateRecyclerView(inflater, parent, savedInstanceState); recyclerView.setClipToPadding(false); int paddingTop = getActivity().getResources().getDimensionPixelSize(R.dimen.list_view_padding_top); recyclerView.setPadding(recyclerView.getPaddingLeft(), paddingTop, recyclerView.getPaddingRight(), recyclerView.getPaddingBottom()); return recyclerView; }