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


Java RecyclerView.INVALID_TYPE属性代码示例

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


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

示例1: getItemViewType

@Override
public int getItemViewType(int position) {
    int numHeaders = getHeadersCount();
    if (position < numHeaders) {
        return RecyclerView.INVALID_TYPE;
    }
    int adjPosition = position - numHeaders;
    int adapterCount;
    if (mAdapter != null) {
        adapterCount = mAdapter.getItemCount();
        if (adjPosition < adapterCount) {
            return mAdapter.getItemViewType(adjPosition);
        }
    }
    return RecyclerView.INVALID_TYPE - 1;
}
 
开发者ID:weiwenqiang,项目名称:GitHub,代码行数:16,代码来源:AnimRFRecyclerView.java

示例2: getItemViewType

/**
 * Big integer of itemType returned by delegated adapter may lead to failed
 *
 * @param position item position
 * @return integer represent item view type
 */
@Override
public int getItemViewType(int position) {
    Pair<AdapterDataObserver, Adapter> p = findAdapterByPosition(position);
    if (p == null) {
        return RecyclerView.INVALID_TYPE;
    }

    int subItemType = p.second.getItemViewType(position - p.first.mStartPosition);

    if (subItemType < 0) {
        // negative integer, invalid, just return
        return subItemType;
    }

    if (mHasConsistItemType) {
        mItemTypeAry.put(subItemType, p.second);
        return subItemType;
    }


    int index = p.first.mIndex;

    return (int) getCantor(subItemType, index);
}
 
开发者ID:weiwenqiang,项目名称:GitHub,代码行数:30,代码来源:DelegateAdapter.java

示例3: getItemViewType

/**
 * Big integer of itemType returned by delegated adapter may lead to failed
 *
 * @param position item position
 * @return integer represent item view type
 */
@Override
public int getItemViewType(int position) {
    Pair<AdapterDataObserver, Adapter> p = findAdapterByPosition(position);
    if (p == null) {
        return RecyclerView.INVALID_TYPE;
    }

    int subItemType = p.second.getItemViewType(position - p.first.mStartPosition);

    if (subItemType < 0) {
        // negative integer, invalid, just return
        return subItemType;
    }

    if (mHasConsistItemType) {
        mItemTypeAry.put(subItemType, p.second);
        return subItemType;
    }


    int index = p.first.mIndex;

    return (int) Cantor.getCantor(subItemType, index);
}
 
开发者ID:alibaba,项目名称:vlayout,代码行数:30,代码来源:DelegateAdapter.java

示例4: findTarget

/**
 * Searches for a clickable view that has tapped by the user.
 *
 * @param x The x coordinate of the touch that caused the search.
 * @param y The y coordinate of the touch that caused the search.
 * @return {@link Target} instance that contains tapped view and containing view holder,
 * null if view has not been found.
 */
@Nullable
Target findTarget(final float x, final float y) {
    final View itemView = mHostView.findChildViewUnder(x, y);
    if (itemView == null) {
        return null;
    }

    final RecyclerView.ViewHolder viewHolder = mHostView.getChildViewHolder(itemView);
    final int position = viewHolder.getAdapterPosition();
    final int viewType = viewHolder.getItemViewType();
    if (position <= RecyclerView.NO_POSITION || viewType <= RecyclerView.INVALID_TYPE) {
        return null;
    }

    final ClickableViews clickableViews = mCallback.getClickableViews(position, viewType);
    return findTargetInViewHolder(viewHolder, clickableViews, x, y);
}
 
开发者ID:GlobusLTD,项目名称:recyclerview-android,代码行数:25,代码来源:ClickableViewFinder.java

示例5: getItemViewType

@Override
public int getItemViewType(int position) {
    if(position>=0&&position<headerViews.size()){
        //如果是头部则返回一个不可用的标识,表示这是头部item
        return RecyclerView.INVALID_TYPE;
    }

    if(adapter!=null){
        int p=position-headerViews.size();
        if(p<adapter.getItemCount()){
            return adapter.getItemViewType(p);
        }
    }

    return RecyclerView.INVALID_TYPE-1;//默认返回表示是尾部的item
}
 
开发者ID:ymqq,项目名称:CommonFramework,代码行数:16,代码来源:MyWrapAdapter.java

示例6: getItemViewType

@Override
public int getItemViewType(int position) {
    // 当有头部的情况下
    if (mHeaderView != null && position == 0) {
        // 这里表示头部
        return RecyclerView.INVALID_TYPE;
    }

    // 这里需要对常规列表item的position进行修复,需要排除头部与底部所占的位置
    int fixedPosition = position - 1;
    if (fixedPosition >=0 && fixedPosition < mAdapter.getItemCount()) {
        return mAdapter.getItemViewType(fixedPosition);
    }
    // 这里表示底部
    return RecyclerView.INVALID_TYPE - 1;
}
 
开发者ID:ymqq,项目名称:CommonFramework,代码行数:16,代码来源:RefreshWrapAdapter.java

示例7: onCreateViewHolder

@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    if (viewType == RecyclerView.INVALID_TYPE) {
        return new HeaderViewHolder(mHeaderViews.get(headerPosition++));
    } else if (viewType == RecyclerView.INVALID_TYPE - 1) {
        StaggeredGridLayoutManager.LayoutParams params = new StaggeredGridLayoutManager.LayoutParams(
                StaggeredGridLayoutManager.LayoutParams.MATCH_PARENT, StaggeredGridLayoutManager.LayoutParams.WRAP_CONTENT);
        params.setFullSpan(true);
        mFootViews.get(0).setLayoutParams(params);
        return new HeaderViewHolder(mFootViews.get(0));
    }
    return mAdapter.onCreateViewHolder(parent, viewType);
}
 
开发者ID:weiwenqiang,项目名称:GitHub,代码行数:13,代码来源:AnimRFRecyclerView.java

示例8: onCreateViewHolder

@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    if (viewType == RecyclerView.INVALID_TYPE) {
        return new RecyclerView.ViewHolder(new LinearLayout(parent.getContext())){};
    }
    return mAdapter.onCreateViewHolder(parent, viewType);
}
 
开发者ID:ymqq,项目名称:CommonFramework,代码行数:7,代码来源:ItemTouchBuilder.java

示例9: getItemViewType

@Override
public int getItemViewType(int position) {
    if (position == 0) {
        return RecyclerView.INVALID_TYPE;
    }
    return super.getItemViewType(position);
}
 
开发者ID:ymqq,项目名称:CommonFramework,代码行数:7,代码来源:ItemTouchBuilder.java

示例10: onCreateViewHolder

@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    if(viewType== RecyclerView.INVALID_TYPE){
        //头部item
        return new RecyclerView.ViewHolder(headerViews.get(0)){};
    }else if(viewType== (RecyclerView.INVALID_TYPE-1)){
        //尾部item
        return new RecyclerView.ViewHolder(footViews.get(0)){};
    }
    return adapter.onCreateViewHolder(parent,viewType);
}
 
开发者ID:ymqq,项目名称:CommonFramework,代码行数:11,代码来源:MyWrapAdapter.java

示例11: onCreateViewHolder

@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    // 头部
    if (mHeaderView != null && viewType == RecyclerView.INVALID_TYPE) {
        return new RecyclerView.ViewHolder(mHeaderView) {};
    }
    // 底部
    else if (mFooterView != null && viewType == RecyclerView.INVALID_TYPE - 1) {
        return new RecyclerView.ViewHolder(mFooterView) {};
    }
    // 其他常规列表item
    return mAdapter.onCreateViewHolder(parent, viewType);
}
 
开发者ID:ymqq,项目名称:CommonFramework,代码行数:13,代码来源:RefreshWrapAdapter.java

示例12: onCreateViewHolder

@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    if (viewType == RecyclerView.INVALID_TYPE) {
        return new RecyclerView.ViewHolder(new LinearLayout(parent.getContext())) {
        };
    }
    return mAdapter.onCreateViewHolder(parent, viewType);
}
 
开发者ID:ymqq,项目名称:CommonFramework,代码行数:8,代码来源:ItemTouchBuilder.java

示例13: getItemViewType

@Override
public int getItemViewType(int position) {
    final DataModel m = getItemAt(position);
    if (m == null) {
        return RecyclerView.INVALID_TYPE;
    }
    return m.type();
}
 
开发者ID:jsaund,项目名称:RxUploader,代码行数:8,代码来源:UploadRecyclerAdapter.java


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