当前位置: 首页>>代码示例>>Java>>正文


Java RecyclerView.NO_POSITION属性代码示例

本文整理汇总了Java中android.support.v7.widget.RecyclerView.NO_POSITION属性的典型用法代码示例。如果您正苦于以下问题:Java RecyclerView.NO_POSITION属性的具体用法?Java RecyclerView.NO_POSITION怎么用?Java RecyclerView.NO_POSITION使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在android.support.v7.widget.RecyclerView的用法示例。


在下文中一共展示了RecyclerView.NO_POSITION属性的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: snapFromFling

/**
 * Helper method to facilitate for snapping triggered by a fling.
 *
 * @param layoutManager The {@link RecyclerView.LayoutManager} associated with the attached
 *                      {@link RecyclerView}.
 * @param velocityX     Fling velocity on the horizontal axis.
 * @param velocityY     Fling velocity on the vertical axis.
 * @return true if it is handled, false otherwise.
 */
private boolean snapFromFling(@NonNull RecyclerView.LayoutManager layoutManager, int velocityX,
                              int velocityY) {
    if (!(layoutManager instanceof RecyclerView.SmoothScroller.ScrollVectorProvider)) {
        return false;
    }

    RecyclerView.SmoothScroller smoothScroller = createSnapScroller(layoutManager);
    if (smoothScroller == null) {
        return false;
    }

    int targetPosition = findTargetSnapPosition(layoutManager, velocityX, velocityY);
    if (targetPosition == RecyclerView.NO_POSITION) {
        return false;
    }

    smoothScroller.setTargetPosition(targetPosition);
    layoutManager.startSmoothScroll(smoothScroller);
    return true;
}
 
开发者ID:hanhailong,项目名称:GridPagerSnapHelper,代码行数:29,代码来源:SnapHelper.java

示例2: onClick

@Override
public void onClick(View v) {
    int position = getAdapterPosition();

    if (position != RecyclerView.NO_POSITION) {
        Intent intent = new Intent(v.getContext(), DisplayProductsDescActivity.class);
        Bundle bundle = new Bundle();
        intent.putExtra("name", items.get(position).getName());
        intent.putExtra("price", items.get(position).getPrice());
        intent.putExtra("image_link", items.get(position).getImageLink());
        intent.putExtra("product_link", items.get(position).getProductLink());
        intent.putExtra("description", items.get(position).getDescription());

        ArrayList<ProductColor> productColorArrayList = new ArrayList<ProductColor>(items
                .get(position).getProductColors());

        if (!productColorArrayList.isEmpty()) {
            intent.putParcelableArrayListExtra("product_colors", productColorArrayList);
        }

        v.getContext().startActivity(intent);
    }
}
 
开发者ID:moyheen,项目名称:MakeUpSearch,代码行数:23,代码来源:MakeUpSearchAdapter.java

示例3: onClick

@Override
public void onClick(View view) {
    final int position = getAdapterPosition();
    if(position != RecyclerView.NO_POSITION) {
        mListener.onItemClick(position);
    }
}
 
开发者ID:ramack,项目名称:ActivityDiary,代码行数:7,代码来源:SelectViewHolders.java

示例4: getStartView

private View getStartView(RecyclerView.LayoutManager layoutManager,
                          OrientationHelper helper) {

    if (layoutManager instanceof LinearLayoutManager) {
        int firstChild = ((LinearLayoutManager) layoutManager).findFirstVisibleItemPosition();

        boolean isLastItem = ((LinearLayoutManager) layoutManager)
                .findLastCompletelyVisibleItemPosition()
                == layoutManager.getItemCount() - 1;

        if (firstChild == RecyclerView.NO_POSITION || isLastItem) {
            return null;
        }

        View child = layoutManager.findViewByPosition(firstChild);

        if (helper.getDecoratedEnd(child) >= helper.getDecoratedMeasurement(child) / 2
                && helper.getDecoratedEnd(child) > 0) {
            return child;
        } else {
            if (((LinearLayoutManager) layoutManager).findLastCompletelyVisibleItemPosition()
                    == layoutManager.getItemCount() - 1) {
                return null;
            } else {
                return layoutManager.findViewByPosition(firstChild + 1);
            }
        }
    }

    return super.findSnapView(layoutManager);
}
 
开发者ID:RajneeshSingh007,项目名称:MusicX-music-player,代码行数:31,代码来源:StartSnapHelper.java

示例5: onUserClick

@OnClick(R.id.iv_user_avatar)
public void onUserClick(){
    if(getAdapterPosition() != RecyclerView.NO_POSITION){
        ProfileActivity.show((Activity) context, ivUserAvatar, data.get(getAdapterPosition()).getOwner().getLogin(),
                data.get(getAdapterPosition()).getOwner().getAvatarUrl());
    }
}
 
开发者ID:ThirtyDegreesRay,项目名称:OpenHub,代码行数:7,代码来源:RepositoriesAdapter.java

示例6: addItem

private void addItem(View view) {
    int position = mRecyclerView.getChildAdapterPosition(view);
    if (position != RecyclerView.NO_POSITION) {
        int color = generateColor();
        mColors.add(position, color);
        notifyItemInserted(position);
    }
}
 
开发者ID:zawadz88,项目名称:AnimationShowcase,代码行数:8,代码来源:RecyclerViewAnimationActivity.java

示例7: onLongClick

@Override
public boolean onLongClick(View v) {
    if(mOnItemLongClickListener != null && getAdapterPosition() != RecyclerView.NO_POSITION){
        return mOnItemLongClickListener.onItemLongClick(getAdapterPosition(), v);
    }
    return false;
}
 
开发者ID:ThirtyDegreesRay,项目名称:OpenHub,代码行数:7,代码来源:BaseViewHolder.java

示例8: getFixedScrollPosition

/**
 * @param direction 滑动方向,正负同{@link #mScrollOffset}的增减
 * @param fixValue  同向修正值
 * @return
 */
public int getFixedScrollPosition(int direction, float fixValue) {
    if (mCheckedChildSize) {
        if (mScrollOffset % mChildSize[mOrientation] == 0) {
            return RecyclerView.NO_POSITION;
        }
        float position = mScrollOffset * 1.0f / mChildSize[mOrientation];
        return convert2AdapterPosition((int) (direction > 0 ? position + fixValue : position + (1 - fixValue)) - 1);
    }
    return RecyclerView.NO_POSITION;
}
 
开发者ID:thunderpunch,项目名称:LadderLayoutManager,代码行数:15,代码来源:LadderLayoutManager.java

示例9: onClick

@Override
public void onClick(View v) {
  int position = recyclerView.getChildAdapterPosition(v);
  if (position != RecyclerView.NO_POSITION) {
    QariDownloadInfo info = shuyookhAdapter.getSheikhInfoForPosition(position);
    if (info.downloadedSuras.size() != 114) {
      download(qariItems.get(position));
    }
  }
}
 
开发者ID:Elias33,项目名称:Quran,代码行数:10,代码来源:AudioManagerActivity.java

示例10: onLayoutChildren

@Override
public void onLayoutChildren(RecyclerView.Recycler recycler, RecyclerView.State state) {
    if (state.isPreLayout()) {
        return;
    }

    if (state.getItemCount() == 0) {
        removeAndRecycleAllViews(recycler);
        setCurrentPosition(RecyclerView.NO_POSITION, false);
        return;
    }

    if (mDecoratedChildWidth == null || mDecoratedChildHeight == null) {
        View view = recycler.getViewForPosition(0);
        addView(view);
        measureChildWithMargins(view, 0, 0);
        mDecoratedChildWidth = getDecoratedMeasuredWidth(view);
        mDecoratedChildHeight = getDecoratedMeasuredHeight(view);
        removeAndRecycleView(view, recycler);
    }

    if (mCurrentPosition == RecyclerView.NO_POSITION) {
        setCurrentPosition(0, false);
    }

    if (mCurrentPosition >= state.getItemCount()) {
        setCurrentPosition(state.getItemCount() - 1, false);
    }

    detachAndScrapAttachedViews(recycler);

    fill(recycler, state);
}
 
开发者ID:gregbty,项目名称:android-flip-view,代码行数:33,代码来源:FlipLayoutManager.java

示例11: findFirstVisibleItemPosition

private int findFirstVisibleItemPosition(RecyclerView recyclerView) {
    final View child = findOneVisibleChild(0, mLayoutManager.getChildCount(), false, true);
    return child == null ? RecyclerView.NO_POSITION : recyclerView.getChildAdapterPosition(child);
}
 
开发者ID:weiwenqiang,项目名称:GitHub,代码行数:4,代码来源:EndlessRecyclerOnTopScrollListener.java

示例12: onScrollStateChanged

@Override
public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
    switch (newState) {
        case RecyclerView.SCROLL_STATE_DRAGGING:
            // distinct drag to improve accuracy, init mDraggingStart and mDraggingEnd here
            mDragging = true;
            final int[] range = AbstractLayoutManagerUtils.getVisibleRange(recyclerView);
            mDraggingStart = range[0];
            mDraggingEnd = range[1];
            break;
        case RecyclerView.SCROLL_STATE_SETTLING:
            mDragging = false;
            break;
        case RecyclerView.SCROLL_STATE_IDLE:
            mDragging = false;

            // perform final update on the range we have ever visited
            updateVisibleRange(recyclerView);
            AbstractLogUtils.e(this, "==>  visible range: [" + mDraggingStart + ", " + mDraggingEnd + "]");
            MeasurableRecyclerViewHelper.notifyMeasurableViewHolderDataRangeChanged(recyclerView, mDraggingStart, mDraggingEnd);

            // reset mDraggingStart and mDraggingEnd here
            mDraggingStart = RecyclerView.NO_POSITION;
            mDraggingEnd = RecyclerView.NO_POSITION;

            final boolean rtl = AbstractUIUtils.isRightToLeft(getRef());
            if (mRtl ^ rtl) {
                /*
                 * [ANDROID-1778]
                 *
                 * immediately flush the statistics if user change between a ltr and rtl language
                 * on the fly; do the check in here for better performance
                 */
                final List<IMeasurableViewHolder> holders =
                        MeasurableRecyclerViewHelper.getViewHolders(recyclerView, IMeasurableViewHolder.class);
                for (IMeasurableViewHolder holder : holders) {
                    holder.flush();
                }

                if (AbstractLayoutManagerUtils.getOrientation(recyclerView.getLayoutManager())
                        == OrientationHelper.HORIZONTAL) {
                    AbstractLayoutManagerUtils.setReverseLayout(recyclerView.getLayoutManager(), mRtl);
                }
            }
            break;
        default:
            break;
    }
}
 
开发者ID:Tenor-Inc,项目名称:tenor-android-core,代码行数:49,代码来源:MeasurableOnScrollListener.java

示例13: findLastContentItem

private ViewHolder findLastContentItem() {
    int position = getNewTabPageAdapter().getLastContentItemPosition();
    if (position == RecyclerView.NO_POSITION) return null;

    return findViewHolderForAdapterPosition(position);
}
 
开发者ID:rkshuai,项目名称:chromium-for-android-56-debug-video,代码行数:6,代码来源:NewTabPageRecyclerView.java

示例14: findFirstVisibleItemPosition

/**
 * @return first visible item position.
 */
public int findFirstVisibleItemPosition() {
    return getChildCount() != 0 ? getPosition(getChildAt(0)) : RecyclerView.NO_POSITION;
}
 
开发者ID:Ramotion,项目名称:garland-view-android,代码行数:6,代码来源:InnerLayoutManager.java

示例15: deleteItem

public void deleteItem(int position) {
    if (position != RecyclerView.NO_POSITION) {
        m_jItemList.remove(position);
        notifyItemRemoved(position);
    }
}
 
开发者ID:evrencoskun,项目名称:TableView,代码行数:6,代码来源:AbstractRecyclerViewAdapter.java


注:本文中的android.support.v7.widget.RecyclerView.NO_POSITION属性示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。