when i notify my recycleview
using notifyDataSetChange()
its automatically scroll to top.
I am make this adapter for multi pane purpose.
the app is only for tablet.
so can any please give me the solution for this.??
here is my recycleview adapter.
public class PickersListAdapter extends RecyclerView.Adapter<PickersListAdapter.DataObjectHolder>
{
private Context context;
private ArrayList<PickersModel> pickersModelArrayList;
private ItemsListFragment fragment;
public PickersListAdapter(Context context, ArrayList<PickersModel> pickersModelArrayList, ItemsListFragment itemsListFragment)
{
this.context = context;
this.pickersModelArrayList = pickersModelArrayList;
fragment = itemsListFragment;
}
@Override
public PickersListAdapter.DataObjectHolder onCreateViewHolder(ViewGroup parent, final int viewType)
{
View view = LayoutInflater.from(context).inflate(R.layout.inflate_list_pickers, parent, false);
DataObjectHolder dataObjectHolder = new DataObjectHolder(view);
return dataObjectHolder;
}
@Override
public void onBindViewHolder(final PickersListAdapter.DataObjectHolder holder, final int position)
{
holder.myBackground.setSelected(pickersModelArrayList.get(position).isClicked());
holder.checkBox.setChecked(pickersModelArrayList.get(position).isChecked());
holder.txtItemName.setText(pickersModelArrayList.get(position).getItemName());
holder.txtitemQuantity.setText(pickersModelArrayList.get(position).getQuantity());
Log.e("image url...", pickersModelArrayList.get(position).getItemIcon());
Glide.with(context).load(pickersModelArrayList.get(position).getItemIcon()).placeholder(R.drawable.ic_item_icon).into(holder.imageView);
holder.myBackground.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
for (int i = 0; i < pickersModelArrayList.size(); i++)
{
pickersModelArrayList.get(i).setClicked(pickersModelArrayList.get(position).getItemName().equals(pickersModelArrayList.get(i).getItemName()));
}
notifyDataSetChanged();
}
});
}
@Override
public int getItemCount()
{
return pickersModelArrayList.size();
}
public class DataObjectHolder extends RecyclerView.ViewHolder
{
private CheckBox checkBox;
private ImageView imageView;
private TextView txtItemName, txtitemQuantity;
private LinearLayout myBackground;
public DataObjectHolder(View itemView)
{
super(itemView);
myBackground = (LinearLayout) itemView.findViewById(R.id.myBackground);
checkBox = (CheckBox) itemView.findViewById(R.id.checkBoxPickersItems);
imageView = (ImageView) itemView.findViewById(R.id.imgItemIconPickerItems);
txtItemName = (TextView) itemView.findViewById(R.id.txtItemNamePickerItems);
txtitemQuantity = (TextView) itemView.findViewById(R.id.txtItemQuantityPickerItems);
}
}
}