Recyclerview - 从视图中的按钮获取位置

时间:2015-08-03 03:59:07

标签: android android-recyclerview

我想从行中获取位置,当我点击它时我的按钮就在那里。

它位于一个视图中,并且有一个on click事件。 当我使用getPosition();时,每次点击时,我都会在不同的行-1中出现。 我发现,在"行"点击监听器,我可以得到正确的位置,但我不知道如何将该值传递给按钮点击。

我的代码目前看起来像这样:

        debug("position0: "+pos);

        done_btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                debug("position1: " + pos);

                adapter.notifyItemRemoved(pos);

                Snackbar
                        .make(v.getRootView().findViewById(R.id.snackbar), "Notice marked as done", Snackbar.LENGTH_LONG)
                        .setActionTextColor(Color.parseColor("#E91E63"))
                        .setAction("Undo", new View.OnClickListener() {
                            @Override
                            public void onClick(View v) {
                                debug("position2: "+pos);
                                adapter.notifyItemInserted(pos);
                            }
                        })
                        .show();

            }
        });

有什么建议吗?让我知道 :) 提前致谢

1 个答案:

答案 0 :(得分:0)

//你可以在按钮

中使用它

//首先通过扩展并添加此行来创建自定义按钮

public int butposition(){

//使用此功能确保ure按钮是recyclerview的直接子项,否则你必须再次呼叫孩子

 int iPosition = -1;
    if (this.getParent() instanceof RecyclerView)
        iPosition = ((RecyclerView) getParent()).getChildAdapterPosition(this);
enter code here}