public override void OnActivityCreated(Bundle savedInstanceState) { firebaseAnalytics = FirebaseAnalytics.GetInstance(Context); base.OnCreate(savedInstanceState); _projects = Queries.AllProjects(); // It is not possible to SetAdapter in OnActivityCreated as accessing the rootView. adapter = new ProjectsAdapter(_projects); adapter.ProjectClicked += OnProjectClick; Activity.FindViewById <RecyclerView>(Resource.Id.projects).SetAdapter(adapter); // As this method is called each time the Fragment is in view (similar to onResume), // only call it if there are no projects, i.e. on first use. if (_projects.Count <= 0) { LoadDataIfNotLoading(true); } var refresher = Activity.FindViewById <SwipeRefreshLayout>(Resource.Id.projectsRefresher); refresher.SetColorSchemeResources(Resource.Color.primary_material_dark); refresher.Refresh += async delegate { LOG_SWIPE_REFRESH(); await LoadData(); refresher.Refreshing = false; }; }
private async Task GetData(ListView listView, Controller ctrl) { try { var output = await ctrl.GetProjects(Settings.GetInstance().Dataset); Debug.WriteLine("We are here"); var listAdapter = new ProjectsAdapter(Activity, Android.Resource.Layout.SimpleListItem1, output.ToArray()); Debug.WriteLine("Setting the adapter"); listView.Adapter = listAdapter; Debug.WriteLine("List will be displayed"); SetListShown(true); ListView.SetSelection(listAdapter.Count - 1); } catch (CannotReachServerException) { AlertDialog.Builder builder = new AlertDialog.Builder(Activity); builder.SetTitle("Unable to Connect") .SetMessage("Please check your network connection and try again") .SetNeutralButton("Okay", (sender, args) => { builder.Dispose(); ((MainActivity)Activity).FragmentManager.PopBackStack(); }) .SetCancelable(false); AlertDialog alert = builder.Create(); alert.Show(); } catch (StatusNotOkayException se) { AlertDialog.Builder builder = new AlertDialog.Builder(Activity); builder.SetTitle("An Error has occured") .SetMessage("Error :" + se.GetMessage()) .SetNeutralButton("Okay", (sender, args) => { builder.Dispose(); }) .SetCancelable(false); AlertDialog alert = builder.Create(); alert.Show(); } catch (Exception e) { // For any other weird exceptions AlertDialog.Builder builder = new AlertDialog.Builder(Activity); builder.SetTitle("An Error has occured") .SetNeutralButton("Okay", (sender, args) => { builder.Dispose(); }) .SetMessage("Error :" + e.Message) .SetCancelable(false); AlertDialog alert = builder.Create(); alert.Show(); } }
public override Dialog OnCreateDialog (Bundle state) { adapter = new ProjectsAdapter (); var dia = new AlertDialog.Builder (Activity) .SetTitle (Resource.String.ChooseTimeEntryProjectDialogTitle) .SetAdapter (adapter, OnItemSelected) .SetNegativeButton (Resource.String.ChooseTimeEntryProjectDialogCancel, OnCancelButtonClicked) .Create (); dia.ListView.Divider = Activity.Resources.GetDrawable (Resource.Drawable.dividerhorizontalopaque); return dia; }
public override Dialog OnCreateDialog(Bundle state) { adapter = new ProjectsAdapter(); var dia = new AlertDialog.Builder(Activity) .SetTitle(Resource.String.ChooseTimeEntryProjectDialogTitle) .SetAdapter(adapter, OnItemSelected) .SetNegativeButton(Resource.String.ChooseTimeEntryProjectDialogCancel, OnCancelButtonClicked) .Create(); dia.ListView.Divider = Activity.Resources.GetDrawable(Resource.Drawable.dividerhorizontalopaque); return(dia); }
private async void GetProjects() { try { List <Project> projectList = await _vm.GetProjects(); //Set up adapter and stuff here projectsAdapter = new ProjectsAdapter(this.Activity, projectList); ListView listView = View.FindViewById <ListView>(Resource.Id.lv_projects); listView.ItemClick += listView_ItemClick; listView.Adapter = projectsAdapter; } catch (Exception e) { //Show exception message here Console.WriteLine("Exception occured. Reason:" + e.Message); } }
public override void OnStart() { base.OnStart(); firebaseAnalytics = FirebaseAnalytics.GetInstance(Context); _projects = Queries.AllProjects(); // It is not possible to SetAdapter in OnActivityCreated as accessing the rootView. adapter = new ProjectsAdapter(_projects, Context); adapter.ProjectClicked += OnProjectClick; listView.SetAdapter(adapter); refresher = Activity.FindViewById <SwipeRefreshLayout>(Resource.Id.projectsRefresher); refresher.SetColorSchemeResources(Resource.Color.primary_material_dark); refresher.Refresh += Refresher_Refresh; if (!HasRefreshedProjects) { LoadDataIfNotLoading(); } }
protected override async void OnCreate(Bundle bundle) { base.OnCreate(bundle); SetContentView(Resource.Layout.Main); var toolbar = FindViewById <Toolbar>(Resource.Id.AppToolbar); toolbar.SetNavigationIcon(Resource.Drawable.icon); SetActionBar(toolbar); ActionBar.Title = GetString(Resource.String.ApplicationName); _projectsDataSource = new List <Project>(); _projectsAdapter = new ProjectsAdapter(_projectsDataSource); _projectsAdapter.ItemClicked += OnProjectItemClicked; _progressBar = FindViewById <ProgressBar>(Resource.Id.Progressbar); var projectsRecycleView = FindViewById <RecyclerView>(Resource.Id.ProjectsRecyclerView); projectsRecycleView.SetLayoutManager(new LinearLayoutManager(this)); projectsRecycleView.SetAdapter(_projectsAdapter); await LoadProjectsAsync(); }
private async Task GetData(ListView listView, Controller ctrl) { try { var output = await ctrl.GetProjects(AccountStorage.DataSet); Debug.WriteLine("We are here"); var listAdapter = new ProjectsAdapter(Activity, Android.Resource.Layout.SimpleListItem1, output.ToArray()); Debug.WriteLine("Setting the adapter"); listView.Adapter = listAdapter; Debug.WriteLine("List will be displayed"); SetListShown(true); ListView.SetSelection(listAdapter.Count - 1); } catch (CannotReachServerException) { AlertDialog.Builder builder = new AlertDialog.Builder(Activity); builder.SetTitle("Unable to Connect") .SetMessage("Please check your network connection and try again") .SetNeutralButton("Okay", (sender, args) => { builder.Dispose(); ((MainActivity)Activity).FragmentManager.PopBackStack(); }) .SetCancelable(false); AlertDialog alert = builder.Create(); alert.Show(); } catch (WebException we) { if (we.Status == WebExceptionStatus.ProtocolError) { var response = we.Response as HttpWebResponse; if (response != null) { Console.WriteLine("HTTP Status Code: " + (int)response.StatusCode); if (response.StatusCode == HttpStatusCode.Forbidden) { try { Toast.MakeText(this.Activity, "Username and password error.", ToastLength.Long).Show(); System.Diagnostics.Debug.WriteLine("We are about to logout"); AccountStorage.ClearStorage(); System.Diagnostics.Debug.WriteLine("Main Activity is :" + Activity == null); System.Diagnostics.Debug.WriteLine("Items in the backstack :" + Activity.FragmentManager.BackStackEntryCount); System.Diagnostics.Debug.WriteLine("Main Activity is :" + Activity == null); Activity.FragmentManager.PopBackStack(null, PopBackStackFlags.Inclusive); System.Diagnostics.Debug.WriteLine("Items in the backstack 2 :" + Activity.FragmentManager.BackStackEntryCount); ((MainActivity)(Activity)).SetDrawerState(false); ((MainActivity)(Activity)).SwitchToFragment(MainActivity.FragmentTypes.Login); } catch (System.Exception e) { System.Diagnostics.Debug.WriteLine("We encountered an error :" + e.Message); } } } else { // no http status code available Toast.MakeText(Activity, "Unable to load the data. Please restart the application.", ToastLength.Short).Show(); } } else { // no http status code availableToast.MakeText(Activity, "Unable to load the data. Please restart the application.", ToastLength.Short).Show(); } } catch (StatusNotOkayException se) { AlertDialog.Builder builder = new AlertDialog.Builder(Activity); builder.SetTitle("An Error has occured") .SetMessage("Error :" + se.GetMessage()) .SetNeutralButton("Okay", (sender, args) => { builder.Dispose(); }) .SetCancelable(false); AlertDialog alert = builder.Create(); alert.Show(); } catch (Exception e) { // For any other weird exceptions AlertDialog.Builder builder = new AlertDialog.Builder(Activity); builder.SetTitle("An Error has occured") .SetNeutralButton("Okay", (sender, args) => { builder.Dispose(); }) .SetMessage("Error :" + e.Message) .SetCancelable(false); AlertDialog alert = builder.Create(); alert.Show(); } }
//populate list private void populateProjectList(View view) { projects = ProjectsCollection.GetProjects(); adapter = new ProjectsAdapter(view.Context, projects); mListProjects.Adapter = adapter; }