Esempio n. 1
0
        protected override void OnResume()
        {
            base.OnResume();

            // fetch latest data
            List <RiwayatReminder> data = ReminderHelper.GetReminderList();

            // update data
            RecyclerView        rvRiwayatReminder = FindViewById <RecyclerView>(Resource.Id.rvRiwayatReminder);
            ReminderAdapter     mAdapter          = new ReminderAdapter(data);
            LinearLayoutManager mLayoutManager    = new LinearLayoutManager(this);

            rvRiwayatReminder.SetLayoutManager(mLayoutManager);
            rvRiwayatReminder.SetAdapter(mAdapter);
        }
Esempio n. 2
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            SetContentView(Resource.Layout.activity_home);

            ViewHolder = new HomeActivityViewHolder(this);

            ReminderAdapter = new ReminderAdapter(
                ViewHolder.ReminderRecyclerView,
                ViewModel)
            {
                Items = ViewModel.Reminders
            };

            ViewHolder.ReminderRecyclerView.SetAdapter(ReminderAdapter);
            ViewHolder.ReminderRecyclerView.SetLayoutManager(new LinearLayoutManager(this, 1, false));

            ViewHolder.SwipeRefresh.SetColorSchemeResources(Resource.Color.colorAccent);
        }
        protected override async void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);

            // Set View From Main Layout Resource
            SetContentView(Resource.Layout.MainActivity);

            // Set Title
            ActionBar.Title = "Daily Update";

            // Set Date Text View
            dateTextView = FindViewById<TextView>(Resource.Id.dateTextView);
            dateTextView.Text = DateTime.Today.ToShortDateString();

            // Initialize Progress Bar
            progressBar = FindViewById<ProgressBar>(Resource.Id.loadingProgressBar);
            progressBar.Visibility = ViewStates.Gone;

            // Create Adapter To Bind The Reminder Items To The View
            reminderAdapter = new ReminderAdapter(this);
            reminderListView = FindViewById<ListView>(Resource.Id.listViewRemindersMain);
            reminderListView.Adapter = reminderAdapter;

            // Create Progress Filter To Handle Busy State
            var progressHandler = new ProgressHandler();
            progressHandler.BusyStateChange += (busy) =>
            {
                if (progressBar != null)
                    progressBar.Visibility = busy ? ViewStates.Visible : ViewStates.Gone;
            };

            // Set Meal Text Views
            breakfastTextView = FindViewById<TextView>(Resource.Id.breakfastTextView);
            lunchTextView = FindViewById<TextView>(Resource.Id.lunchTextView);
            dinnerTextView = FindViewById<TextView>(Resource.Id.dinnerTextView);

            // Set Sober Driver Button
            soberDriverButton = FindViewById<Button>(Resource.Id.soberDriverButton);

            // Sober Driver Button
            soberDriverButton.Click += (object sender, EventArgs e) =>
            {
                // On Button Click, Attempt To Dial
                var callDialog = new AlertDialog.Builder(this);
                callDialog.SetMessage("Call Sober Driver?");
                callDialog.SetPositiveButton("Call", delegate
                {
                    // Create Intent To Dial Phone
                    var callIntent = new Intent(Intent.ActionCall);
                    callIntent.SetData(Android.Net.Uri.Parse("tel:8168309808")); // TODO: Change Number
                    StartActivity(callIntent);
                });

                // Create Negative Button And Show Dialog
                callDialog.SetNegativeButton("Cancel", delegate { });
                callDialog.Show();
            };

            // Connect To Azure Mobile Service
            try
            {
                // Initialize
                CurrentPlatform.Init();

                // Create Mobile Service Client Instance
                client = new MobileServiceClient(Constants.APPLICATION_URL, Constants.APPLICATION_KEY);

                // Retrieve Tables
                reminderTable = client.GetTable<ReminderItem>();
                mealTable = client.GetTable<MealItem>();

                // Load Data From The Mobile Service
                await RefreshRemindersFromTableAsync();
                await RefreshMealsFromTableAsync(DateTime.Today);

            }
            catch (Exception e)
            {
                CreateAndShowDialog(e, "Connection Error");
            }   
        }
        /** Create Activity **/
        protected override async void OnCreate(Bundle bundle)
        {         
            // Create And Display Layout
            base.OnCreate(bundle);
            SetContentView(Resource.Layout.EditDataScribeActivity);

            // Date Picker Button And Functionality
            datePickerButton = FindViewById<Button>(Resource.Id.buttonDatePicker);
            datePickerButton.Click += delegate { ShowDialog(0); };
            selectedDate = DateTime.Today;;
            datePickerButton.Text = selectedDate.ToShortDateString();

            // Initialize Reminder Adapter
            reminderAdapter = new ReminderAdapter(this);

            // Initialize And Bind List View
            reminderListView = FindViewById<ListView>(Resource.Id.listViewRemindersScribe);
            reminderListView.Adapter = reminderAdapter;
            RegisterForContextMenu(reminderListView);

            // Set Meals Button
            setMealButton = FindViewById<Button>(Resource.Id.buttonSetMeals);
            setMealButton.Click += (object sender, EventArgs e) =>
            {
                CreateAndShowSetMealsDialog();
            };

            // Add Reminder Button
            addReminderButton = FindViewById<Button>(Resource.Id.buttonAddReminder);
            addReminderButton.Click += (object sender, EventArgs e) =>
            {
                CreateAndShowAddReminderDialog();
            };

            // Add Save Button
            saveButton = FindViewById<Button>(Resource.Id.buttonSave);
            saveButton.Click += (object sender, EventArgs e) =>
            {
                // TODO: Add Progress Bar For Saving Data
                // TODO: Possible Confirmation Dialog

                // Save Reminders
                for (int i = 0; i < reminderAdapter.Count; i++)
                {
                    if (reminderAdapter[i].Id == null)
                        AddReminderItem(reminderAdapter[i]);
                }

                // Save Meal Item
                UpdateMealItem(mealItem);

            };

            // Connect To Azure Mobile Service
            try
            {
                // Initialize
                CurrentPlatform.Init();

                // Create Mobile Service Client Instance
                client = new MobileServiceClient(Constants.APPLICATION_URL, Constants.APPLICATION_KEY);

                // Retrieve Tables
                reminderTable = client.GetTable<ReminderItem>();
                mealTable = client.GetTable<MealItem>();

                // Load The Reminders From The Mobile Service
                await RefreshRemindersFromTableAsync(DateTime.Today);

                // Load Meals From The Mobil Service
                await RefreshMealsFromTableAsync(DateTime.Today);

            }
            catch (Exception e)
            {
                CreateAndShowDialog(e, "Connection Error");
            }
        }