android - 如何从onCreateViewHolder获取位置

标签 android android-recyclerview

我有一个 RecylerView 适配器,我在 onCreateViewHolder 方法中处理 onClicks,但是我无法找到获取当前位置的方法。我当前的方法如下所示:

    @Override
    public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View itemView = LayoutInflater.from(parent.getContext())
                .inflate(R.layout.card_small, parent, false);

        return new ViewHolder(itemView, new ViewHolder.IViewHolderClicks() {
            @Override
            public void onImage(ImageView image) {
                // Need the position for logic in here
                // for example, myArrayList.get(position);
            }
        });
    }

有人知道如何从 onCreateViewHolder 中访问当前位置吗?

最佳答案

在 onClick 处理程序中,调用 viewHolder.getAdapterPosition()。

@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    View itemView = LayoutInflater.from(parent.getContext())
            .inflate(R.layout.card_small, parent, false);

    final ViewHolder vh = ViewHolder(itemView, new ViewHolder.IViewHolderClicks() {
        @Override
        public void onImage(ImageView image) {
            int position = vh.getAdapterPosition();
        }
    });
    return vh;
}

关于android - 如何从onCreateViewHolder获取位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31093068/

相关文章:

android - 如何在 Fragment 中实现 Google Fit 计步器

Android ndk 嵌套模块

java - 构建 RecyclerView 时创建的自动生成文件出错

android - 在Firebase实时数据库中更新数据时,包含Recyclerview的 fragment 崩溃

android - 如何在 Activity 中的 RecyclerView 外部处理切换小部件(或按钮)

java - 在 Java 文件中创建时,表列分布不均匀

android - 无法为调试器绑定(bind)到本地 XXXX

android - 消息在回收者 View 中无法正确显示

android - 为什么在 RecyclerView 中滚动时 EditText 中的输入值会交换其位置?

java - 从 sleep 中返回时相机强制关闭。安卓