/* * Method Name: OnCreate * Purpose: To set up the elements on the main menu layout */ protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.TeacherMainMenu); Button addNfcButton = FindViewById <Button> (Resource.Id.addNewCard); Button editEventButton = FindViewById <Button>(Resource.Id.editEvents); Button takePictureButton = FindViewById <Button>(Resource.Id.takePicture); Button makeVoiceRecordingButton = FindViewById <Button>(Resource.Id.makeVoiceRecording); Button closeButton = FindViewById <Button>(Resource.Id.cancelButton); addNfcButton.Click += delegate { addNfcButton.SetBackgroundResource(Resource.Drawable.AddUpdateCardClicked); Intent addNfcIntent = new Intent(this, typeof(AddUpdateNFcCardActivity)); StartActivity(addNfcIntent); }; editEventButton.Click += delegate { editEventButton.SetBackgroundResource(Resource.Drawable.ViewEventsClicked); Intent editEventIntent = new Intent(this, typeof(EventListActivity)); StartActivity(editEventIntent); }; takePictureButton.Click += delegate { takePictureButton.SetBackgroundResource(Resource.Drawable.TakeAPictureButtonClicked); Intent takePictureIntent = new Intent(this, typeof(CameraActivity)); takePictureIntent.PutExtra("PreviousActivity", "MainMenu"); StartActivity(takePictureIntent); }; makeVoiceRecordingButton.Click += delegate { makeVoiceRecordingButton.SetBackgroundResource(Resource.Drawable.MakeARecordingClicked); Intent makeVoiceRecordingIntent = new Intent(this, typeof(VoiceRecordingActivity)); makeVoiceRecordingIntent.PutExtra("PreviousActivity", "MainMenu"); StartActivity(makeVoiceRecordingIntent); }; CancelButtonComponent cancelButton = new CancelButtonComponent(this); cancelButton.Get().Click += (o, e) => { closeButton.SetBackgroundResource(Resource.Drawable.TeacherCloseClicked); cancelButton.Functionality("QuickMenu", this); }; }
/* * Method name: OnCreate * Purpose: Used to add functionality to the camera page */ protected override void OnCreate(Bundle savedInstanceState) { //To allow the use of picture URL, found from https://stackoverflow.com/questions/39242026/fileuriexposedexception-in-android-n-with-camera/42632654 StrictMode.VmPolicy.Builder builder = new StrictMode.VmPolicy.Builder(); StrictMode.SetVmPolicy(builder.Build()); base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.PictureViewer); Typeface buttonFont = Typeface.CreateFromAsset(Assets, "Kano.otf"); _previousActivity = Intent.GetStringExtra("PreviousActivity"); SpinnerComponent spinner = new SpinnerComponent(this, Resource.Id.eventSelector, this); spinner.Setup(); CheckBox eventComplete = FindViewById <CheckBox>(Resource.Id.eventComplete); bool ticked = false; eventComplete.Click += delegate { if (eventComplete.Checked) { ticked = true; } else { ticked = false; } }; _imageViewer = _camera.GetImageViewer(Resource.Id.imageView, this); _camera.Start(_imageViewer, this, _previousActivity); CancelButtonComponent cancelButton = new CancelButtonComponent(this); cancelButton.Get().SetTypeface(buttonFont, TypefaceStyle.Bold); cancelButton.Get().Click += (o, e) => { cancelButton.Functionality(_previousActivity, this); }; Button submitButton = FindViewById <Button>(Resource.Id.submitButton); submitButton.SetTypeface(buttonFont, TypefaceStyle.Bold); bool anotherPicture = false; submitButton.Click += (o, e) => { if (anotherPicture == false) { bool uploadedSuccessful; if (spinner.GetSelected().Equals("New Event")) { uploadedSuccessful = _camera.SaveNewEvent(ticked); } else { uploadedSuccessful = _camera.SaveExistingEvent(spinner, ticked); } if (uploadedSuccessful) { spinner.Disable(); eventComplete.Enabled = false; submitButton.Text = "Take Another Picture"; cancelButton.Get().Text = "Close"; AlertBoxComponent voiceRecording = new AlertBoxComponent(this); voiceRecording.RepeateFunctionSetup <VoiceRecordingActivity>("Take Voice Recording", "Do you want to take a voice recording?", this, this, _previousActivity); voiceRecording.Show(); anotherPicture = true; } else { AlertBoxComponent errorUplaodingAlertBox = new AlertBoxComponent(this); errorUplaodingAlertBox.Setup("Cannot Add To Event", "This event has already been made into a story and cannot be updated. Select a different event or make a new event."); errorUplaodingAlertBox.Show(); } } else { Intent repeatedActivity = new Intent(this, typeof(CameraActivity)); repeatedActivity.PutExtra("PreviousActivity", _previousActivity); StartActivity(repeatedActivity); } }; }
protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.VoiceRecView); Typeface buttonFont = Typeface.CreateFromAsset(Assets, "Kano.otf"); string previousActivity = Intent.GetStringExtra("PreviousActivity"); SpinnerComponent spinner = new SpinnerComponent(this, Resource.Id.eventSelector, this); spinner.Setup(); Button startRecordingButton = FindViewById <Button> (Resource.Id.startRecordingButton); startRecordingButton.SetTypeface(buttonFont, TypefaceStyle.Bold); startRecordingButton.SetBackgroundColor(Color.ParseColor("#213f5e")); startRecordingButton.SetTextColor(Color.White); startRecordingButton.SetTextSize(ComplexUnitType.Dip, 15); Button playRecordingButton = FindViewById <Button> (Resource.Id.playButton); playRecordingButton.SetTypeface(buttonFont, TypefaceStyle.Bold); playRecordingButton.SetBackgroundResource(Resource.Drawable.ButtonGenerator); playRecordingButton.SetTextColor(Color.White); playRecordingButton.SetTextSize(ComplexUnitType.Dip, 15); Button submitButton = FindViewById <Button>(Resource.Id.submitButton); submitButton.SetTypeface(buttonFont, TypefaceStyle.Bold); submitButton.SetBackgroundResource(Resource.Drawable.ButtonGenerator); submitButton.SetTextColor(Color.White); submitButton.SetTextSize(ComplexUnitType.Dip, 15); playRecordingButton.Enabled = false; playRecordingButton.SetBackgroundResource(Resource.Drawable.ButtonDimmedGenerator); playRecordingButton.SetTextColor(Color.ParseColor("#969a90")); VoiceRecording.VoiceRecording voiceRecorder = new VoiceRecording.VoiceRecording(); CancelButtonComponent cancelButton = new CancelButtonComponent(this); cancelButton.Get().SetTypeface(buttonFont, TypefaceStyle.Bold); cancelButton.Get().SetBackgroundResource(Resource.Drawable.ButtonGenerator); cancelButton.Get().SetTextColor(Color.White); cancelButton.Get().SetTextSize(ComplexUnitType.Dip, 15); cancelButton.Get().Click += (o, e) => { cancelButton.Functionality(previousActivity, this); }; startRecordingButton.Click += delegate { startRecordingButton.SetTextColor(Color.Black); if (startRecordingButton.Text.Equals("Redo voice recording")) { voiceRecorder.Begin(startRecordingButton, submitButton, playRecordingButton, true); } else { voiceRecorder.Begin(startRecordingButton, submitButton, playRecordingButton, false); } }; playRecordingButton.Click += delegate { voiceRecorder.Play(); startRecordingButton.Text = "Redo voice recording"; }; CheckBox eventComplete = FindViewById <CheckBox>(Resource.Id.eventComplete); bool ticked = false; eventComplete.Click += delegate { if (eventComplete.Checked) { ticked = true; } else { ticked = false; } }; submitButton.Enabled = false; submitButton.SetBackgroundResource(Resource.Drawable.ButtonDimmedGenerator); submitButton.SetTextColor(Color.ParseColor("#969a90")); bool anotherRecording = false; submitButton.Click += (o, e) => { if (anotherRecording == false) { //submit to database stuff goes here bool uploadedSuccessful; if (spinner.GetSelected().Equals("New Event")) { uploadedSuccessful = voiceRecorder.SaveNewEvent(ticked); } else { uploadedSuccessful = voiceRecorder.SaveExistingEvent(spinner, ticked); } if (uploadedSuccessful) { spinner.Disable(); eventComplete.Enabled = false; submitButton.Text = "Take Another Voice Recording"; cancelButton.Get().Text = "Close"; startRecordingButton.Enabled = false; startRecordingButton.SetBackgroundColor(Color.ParseColor("#142635")); startRecordingButton.SetTextColor(Color.ParseColor("#969a90")); playRecordingButton.Enabled = false; playRecordingButton.SetBackgroundResource(Resource.Drawable.ButtonDimmedGenerator); playRecordingButton.SetTextColor(Color.ParseColor("#969a90")); AlertBoxComponent voiceRecording = new AlertBoxComponent(this); voiceRecording.RepeateFunctionSetup <CameraActivity>("Take Picture", "Do you want to take a picture?", this, this, previousActivity); voiceRecording.Show(); anotherRecording = true; } else { AlertBoxComponent errorUplaodingAlertBox = new AlertBoxComponent(this); errorUplaodingAlertBox.Setup("Cannot Add To Event", "This event has already been made into a story and cannot be updated. Select a different event or make a new event."); errorUplaodingAlertBox.Show(); } } else { Intent repeatedActivity = new Intent(this, typeof(VoiceRecordingActivity)); repeatedActivity.PutExtra("PreviousActivity", previousActivity); StartActivity(repeatedActivity); } }; }