I want to pass ArrayList<Palatte_Model> from one Activity to another fragment. I am using ParcelableArraylist. Here I attached my code
public class Palette_Model  implements Parcelable{
    public String data_format_value;
    public int data_format_id;
    public Palette_Model(String data_format_value, int data_format_id) {
        this.data_format_value = data_format_value;
        this.data_format_id = data_format_id;
    }
    public String getData_format_value() {
        return data_format_value;
    }
    public void setData_format_value(String data_format_value) {
        this.data_format_value = data_format_value;
    }
    public int getData_format_id() {
        return data_format_id;
    }
    public void setData_format_id(int data_format_id) {
        this.data_format_id = data_format_id;
    }
    protected Palette_Model(Parcel in) {
        data_format_value = in.readString();
        data_format_id = in.readInt();
    }
    @Override
    public int describeContents() {
        return this.hashCode();
    }
    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeString(data_format_value);
        dest.writeInt(data_format_id);
    }
    public void readfromParcel(Parcel source){
        data_format_id = source.readInt();
        data_format_value = source.readString();
    }
    public static final Creator<Palette_Model> CREATOR = new Creator<Palette_Model>() {
        @Override
        public Palette_Model createFromParcel(Parcel in) {
            return new Palette_Model(in);
        }
        @Override
        public Palette_Model[] newArray(int size) {
            return new Palette_Model[size];
        }
    };
}
here i attached my activity class code. to send arraylist to fragment
Platte_fragment dFragment = new Platte_fragment();
                Bundle bundle = new Bundle();
                bundle.putParcelableArrayList("arraylist",  strQuestion);
                dFragment.setArguments(bundle);
              //  dFragment.show(fragmentManager, "array list");
                FragmentTransaction fts = getSupportFragmentManager().beginTransaction();
                fts.replace(R.id.questContFragId, dFragment);
                fts.addToBackStack(dFragment.getClass().getSimpleName());
                fts.commit();
here I mentioned my fragment class code:
I fetch the ArrayList from Activity. it shows a null value
ArrayList<Palette_Model> strQuestion ;
 strQuestion = new ArrayList<>();
         try {
             Bundle bundle = this.getArguments();
             strQuestion =  bundle.getParcelableArrayList("arraylist");
         }catch (NullPointerException e){
                Log.e("er",e.getMessage());
         }
The shown method may produce NullpointerException.
 
     
    