java - How to give data to recyclerView using getters and setters in fragment. The data stored in a class as String Array -


my aim build recyclerview gridlayoutmanager 5 columns in fragment.

i call boardfragment in mainactivity's oncreateview

public class mainactivity extends appcompatactivity {      public static final string board_fragment = "board_fragment";     public static final string board_number_index = "board_number_index";      @override     protected void oncreate(bundle savedinstancestate) {         super.oncreate(savedinstancestate);         setcontentview(r.layout.activity_main);          numbermodel number = new numbermodel();         number.setnumbers(arrays.tostring(boardnumbers.numbers));          boardfragment boardfragment = new boardfragment();          bundle bundle = new bundle();         bundle.putparcelable(board_number_index, savedinstancestate);         boardfragment.setarguments(bundle);          fragmentmanager fragmentmanager = getsupportfragmentmanager();         fragmenttransaction fragmenttransaction = fragmentmanager.begintransaction();         fragmenttransaction.add(r.id.maincontainer, boardfragment, board_fragment);         fragmenttransaction.commit();     } } 

and boardfragment

public class boardfragment extends fragment {     private numbermodel[] mnumbermodels;      @nullable     @override     public view oncreateview(layoutinflater inflater, @nullable viewgroup container, @nullable bundle savedinstancestate) {         view view = inflater.inflate(r.layout.fragment_board, container, false);          bundle bundle = this.getarguments();         if (bundle != null) {             mnumbermodels = bundle.getparcelable(mainactivity.board_fragment);             parcelable[] parcelables = bundle.getparcelablearray(mainactivity.board_number_index);             mnumbermodels = arrays.copyof(parcelables, parcelables.length, numbermodel[].class);         }          recyclerview recyclerview = (recyclerview) view.findviewbyid(r.id.boardrecyclerview);         boardgridadapter adapter = new boardgridadapter(getactivity(), mnumbermodels);         recyclerview.setadapter(adapter);          recyclerview.layoutmanager manager = new gridlayoutmanager(getactivity(), 5);         recyclerview.setlayoutmanager(manager);          recyclerview.sethasfixedsize(true);          return view;     } } 

the boardgridadapter is

public class boardgridadapter extends recyclerview.adapter<boardgridadapter.boardviewholder> {     private context mcontext;     private numbermodel[] mnumbermodels;      public boardgridadapter(context context, numbermodel[] numbermodels) {         mcontext = context;         mnumbermodels = numbermodels;     }      @override     public boardviewholder oncreateviewholder(viewgroup parent, int viewtype) {         view view = layoutinflater.from(parent.getcontext()).inflate(r.layout.item_board, parent, false);         boardviewholder viewholder = new boardviewholder(view);         return viewholder;     }      @override     public void onbindviewholder(boardviewholder holder, int position) {         holder.bindview(mnumbermodels[position]);     }      @override     public int getitemcount() {         return mnumbermodels.length;     }      public class boardviewholder extends recyclerview.viewholder {         public textview mtextview;          public boardviewholder(view itemview) {             super(itemview);             mtextview = (textview) itemview.findviewbyid(r.id.boardnumber);         }          public void bindview (numbermodel numbermodel) {             mtextview.settext(numbermodel.getnumbers());         }     } } 

i done getters , setters here parcelabe

public class numbermodel implements parcelable {     private  string mnumbers;      public numbermodel() {}      public  string getnumbers() {         return mnumbers;     }      public void setnumbers(string numbers) {         mnumbers = numbers;     }      @override     public int describecontents() {         return 0;     }      @override     public void writetoparcel(parcel parcel, int i) {         parcel.writestring(mnumbers);     }      private numbermodel (parcel in) {         mnumbers = in.readstring();     }      public static final creator<numbermodel> creator = new creator<numbermodel>() {         @override         public numbermodel createfromparcel(parcel parcel) {             return new numbermodel(parcel);         }          @override         public numbermodel[] newarray(int i) {             return new numbermodel[i];         }     }; } 

i stored data in class named boardnumbers.class , have string array

public class boardnumbers {     public static string[] numbers = new string []{"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25"}; } 

i don't understand why code not working

now shows error in boardfragment.java

error:(31, 49) error: incompatible types: inferred type not conform upper bound(s) inferred: int#1 upper bound(s): numbermodel[],parcelable int#1 intersection type: int#1 extends numbermodel[],parcelable


Comments

Popular posts from this blog

php - How to display all orders for a single product showing the most recent first? Woocommerce -

asp.net - How to correctly use QUERY_STRING in ISAPI rewrite? -

angularjs - How restrict admin panel using in backend laravel and admin panel on angular? -