public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { ViewModel = new BuildingsViewModel(); Context mContext = Android.App.Application.Context; AppPreferences ap = new AppPreferences(mContext); facilityId = Convert.ToInt32(ap.GetFacilityId()); View view = inflater.Inflate(Resource.Layout.fragment_facility_building, container, false); recyclerView = view.FindViewById <RecyclerView>(Resource.Id.buildingRecyclerView); addButton = view.FindViewById <FloatingActionButton>(Resource.Id.addnewBuilding_button); recyclerView.HasFixedSize = true; recyclerView.SetAdapter(adapter = new BrowseBuildingsAdapter(Activity, ViewModel)); refresher = view.FindViewById <SwipeRefreshLayout>(Resource.Id.buildingRefresher); refresher.SetColorSchemeColors(Resource.Color.accent); progress = view.FindViewById <ProgressBar>(Resource.Id.buildingprogressbar_loading); progress.Visibility = ViewStates.Gone; addButton.Click += AddButton_Click; addButton.SetBackgroundColor(Android.Graphics.Color.Tan); return(view); }
async void Refresher_Refresh(object sender, EventArgs e) { await ViewModel.ExecuteBuildingsCommand(facilityId); recyclerView.SetAdapter(adapter = new BrowseBuildingsAdapter(Activity, ViewModel)); refresher.Refreshing = false; refresher.Refresh += Refresher_Refresh; adapter.ItemClick += Adapter_ItemClick; }
public async override void OnStart() { base.OnStart(); if (ViewModel.Buildings.Count == 0) { MessageDialog messageDialog = new MessageDialog(); messageDialog.ShowLoading(); await ViewModel.ExecuteBuildingsCommand(facilityId); recyclerView.HasFixedSize = true; recyclerView.SetAdapter(adapter = new BrowseBuildingsAdapter(Activity, ViewModel)); messageDialog.HideLoading(); } refresher.Refresh += Refresher_Refresh; adapter.ItemClick += Adapter_ItemClick; }