public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.Inflate(Resource.Layout.pie_menu_fragment, container, false); var categoryTextView = view.FindViewById <TextView>(Resource.Id.categoryTextView); categoryTextView.Text = category.Name; var pieRecyclerView = view.FindViewById <RecyclerView>(Resource.Id.pieRecyclerView); var pieLayoutManager = new LinearLayoutManager(this.Context); pieRecyclerView.SetLayoutManager(pieLayoutManager); var pieAdaptor = new PieAdaptor(category); pieAdaptor.ItemClick += (sender, args) => { var navigateToPieDetailIntent = new Intent(); navigateToPieDetailIntent.SetClass(this.Context, typeof(PieDetailActivity)); navigateToPieDetailIntent.PutExtra("selectedPieId", args); StartActivity(navigateToPieDetailIntent); }; pieRecyclerView.SetAdapter(pieAdaptor); return(view); }
private void SetupRecylcerView() { //retreive recycler view defined in pie_menu.xml _recyclerView = FindViewById <RecyclerView>(Resource.Id.pieRecyclerView); //create a layout manager class by passing it this class instance _pieLayoutManager = new LinearLayoutManager(this); //_pieLayoutManager = new GridLayoutManager(this, 2, GridLayoutManager.Horizontal, false); // set the recycler view's layout manager as the one jsut created _recyclerView.SetLayoutManager(_pieLayoutManager); // instantiate a pie adaptor class _pieAdaptor = new PieAdaptor(); //set the recyclerview's pie adaptor to the one jsut created _recyclerView.SetAdapter(_pieAdaptor); _pieAdaptor.ItemClick += (sender, args) => { var navigateToPieDetailIntent = new Intent(); navigateToPieDetailIntent.SetClass(this, typeof(PieDetailActivity)); navigateToPieDetailIntent.PutExtra("selectedPieId", args); StartActivity(navigateToPieDetailIntent); }; // recycler view takes a reference to the layout manager and the adaptor }