如何在回调中获取查看器项目 class

How to acquire viewholder items in a callback class

我正在尝试通过在回调函数中传递 viewholder 来在另一个 class 中累积我的 recyclerview viewholder 的值。在运行时,我可以看到项目及其值,但如何从视图持有者中提取这些值?我想在回调方法中提取 textview 值。我该如何实现?

这是我的 viewholder 的实现 class

public class CommentViewHolder : RecyclerView.ViewHolder, IItemTouchHelperViewHolder
    {
        public TextView username;
        public ImageView userphoto;
        public TextView time;
        public TextView comment;
        public View _itemView;
        public CommentViewHolder(View view)
            : base(view)
        {
            _itemView = view;
        }


        public void OnItemClear()
        {
            _itemView.SetBackgroundColor(Color.White);
        }

        public void OnItemSelected()
        {
            _itemView.SetBackgroundColor(Color.LightGray);
        }
    }

这是获取viewholder的回调方法。

 public override int GetMovementFlags(Android.Support.V7.Widget.RecyclerView recyclerView, Android.Support.V7.Widget.RecyclerView.ViewHolder viewHolder)
    {

        if (recyclerView.GetLayoutManager() is GridLayoutManager)
        {
            //do something
        }
        else
        {
            //do something
        }
    }

看起来回调给了你一个 ViewHolder,所以你应该能够通过提供的 ViewHolder:

获取值
if(viewHolder instanceof CommentViewHolder) {
    CommentViewHolder holder = (CommentViewHolder) viewHolder;
    String username = holder.username.getText();
}