适配器与startActivityForResult

时间:2016-05-18 19:29:57

标签: android android-recyclerview onactivityresult startactivityforresult

美好的一天,每个人都想要编辑回收视图项目startAcivityForResult / onActivityResult我的代码在BindHolder中

        holder.title.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent goToOrder= new Intent("Order");
            ((Activity)context).startActivityForResult(goToOrder , 10);
            mDataset.get(position).setType_meat(type_meat);
            mDataset.get(position).setType_rice(type_rice);
        }
    });

在BindHolder中,值为null但在此处可正常工作

public void onActivityResult(int requestCode, int resultCode, Intent data) {
    switch (requestCode) {
        case 10:
        if (resultCode == -1) {
            type_rice=data.getStringExtra("type_rice");
            type_meat=data.getStringExtra("type_meat");
            Log.e("type rice", type_rice);
            Log.e("type_meat", type_meat);
        }
    }
}

请提示! 非常感谢大家

1 个答案:

答案 0 :(得分:0)

在适配器中找到商品pos的位置并调用

  adapter.notifyItemChanged(pos)

这将导致为该职位调用onBindViewHolder

如果完全不可能知道位置调用

adapter.notifyDataSetChanged()

这将导致onBindViewHolder调用适配器中的每个可见项