protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            SetContentView(Resource.Layout.Activity_url_launcher_storage);

            var toolbar = FindViewById(Resource.Id.toolbar) as Android.Support.V7.Widget.Toolbar;

            toolbar.SetTitle(Resource.String.url_launcher_title);

            SetSupportActionBar(toolbar);

            var addUrlFab = FindViewById(Resource.Id.url_add_experience_fab);

            addUrlFab.Click += (sender, e) => {
                var intent = new Intent(this, typeof(UrlLauncherSettingsActivity));
                intent.PutExtra(UrlLauncherExperienceGroup, ArExperienceGroup.Serialize(experienceGroup));
                StartActivity(intent);
            };
        }
        private void StoreSettings()
        {
            history.Add(urlView.Text);
            UpdateAutocompleteSource();
            var preferences = GetSharedPreferences(AutocompletePrefs, 0);
            var editor      = preferences.Edit().PutStringSet(AutocompletePrefsHistory, history);

            editor.Apply();

            Features features = 0;

            if (geoSwitch.Checked)
            {
                features |= Features.Geo;
            }
            if (imageSwitch.Checked)
            {
                features |= Features.ImageTracking;
            }
            if (instantSwitch.Checked)
            {
                features |= Features.InstantTracking;
            }
            if (objectSwitch.Checked)
            {
                features |= Features.ObjectTracking;
            }

            CameraPosition cameraPosition;
            var            position = positionSpinner.SelectedItemId;

            switch (position)
            {
            case 1: cameraPosition = CameraPosition.Front; break;

            default: cameraPosition = CameraPosition.Back; break;
            }
            CameraResolution cameraResolution;
            var resolution = resolutionSpinner.SelectedItemId;

            switch (resolution)
            {
            case 1: cameraResolution = CameraResolution.HD_1280x720; break;

            case 2: cameraResolution = CameraResolution.Full_HD_1920x1080; break;

            case 3: cameraResolution = CameraResolution.Auto; break;

            default: cameraResolution = CameraResolution.SD_640x480; break;
            }
            CameraFocusMode cameraFocusMode;

            switch (focusSpinner.SelectedItemId)
            {
            case 1: cameraFocusMode = CameraFocusMode.AutofocusOnce; break;

            case 2: cameraFocusMode = CameraFocusMode.AutofocusOff; break;

            default: cameraFocusMode = CameraFocusMode.AutofocusContinuous; break;
            }

            var experience = new ArExperience(nameView.Text, urlView.Text, features, cameraPosition, cameraResolution, cameraFocusMode, camera2Enabled: camera2Switch.Checked);

            if (editPosition >= 0)
            {
                experienceGroup.ArExperiences[editPosition] = experience;
            }
            else
            {
                experienceGroup.ArExperiences.Add(experience);
            }

            var intent = new Intent(this, typeof(UrlLauncherStorageActivity));

            intent.PutExtra(UrlLauncherStorageActivity.UrlLauncherExperienceGroup, ArExperienceGroup.Serialize(experienceGroup));
            intent.AddFlags(ActivityFlags.ReorderToFront);
            StartActivity(intent);
        }
Esempio n. 3
0
        public override View GetView(int position, View convertView, ViewGroup parent)
        {
            if (convertView == null)
            {
                var inflater = context.GetSystemService(Context.LayoutInflaterService) as LayoutInflater;
                convertView = inflater.Inflate(Resource.Layout.Url_launcher_list_row, null);
            }

            var experience = experienceGroup.ArExperiences[position];

            var name = convertView.FindViewById(Resource.Id.url_list_row_name) as TextView;

            name.Text = experience.Name;

            var editView = convertView.FindViewById(Resource.Id.url_list_row_edit);

            editView.Click += (sender, e) =>
            {
                var intent = new Intent(context, typeof(UrlLauncherSettingsActivity));
                intent.PutExtra(UrlLauncherStorageActivity.UrlLauncherExperienceGroup, ArExperienceGroup.Serialize(experienceGroup));
                intent.PutExtra(UrlLauncherStorageActivity.UrlLauncherEditExperienceId, position);
                context.StartActivity(intent);
            };

            var deleteView = convertView.FindViewById(Resource.Id.url_list_row_delete);

            deleteView.Click += (sender, e) =>
            {
                experienceGroup.ArExperiences.RemoveAt(position);
                NotifyDataSetChanged();
            };
            return(convertView);
        }