Пример #1
0
        private void DisplaySettingsView()
        {
            var alert = new AlertDialog.Builder(this);
            var view  = new BlankView(this);

            alert.SetView(view);

            var lID = Resource.Id.BlankLayoutContainer;

            string[] res, fps, dfps;

            if (PRO_MODE)
            {
                res  = new[] { "480p", "720p", "1080p", "4K" };
                fps  = new[] { "15", "30", "60", "120" };
                dfps = new[] { "1", "5", "10", "15", "30", "60" };
            }
            else
            {
                res  = new[] { "480p", "720p" };
                fps  = new[] { "15", "30" };
                dfps = new[] { "1", "5" };
            }

            s.CreateAndAddLabelBoxRow(view, lID, "CONFIGURAÇÕES DE CAPTURA");

            s.CreateAndAddDescriptionRow2(view, lID, "Selecione a resolução e a velocidade de captura de vídeo. A velocidade " +
                                          "serve apenas como referência - o valor real será determinado pelas capacidades do seu dispositivo.");

            s.CreateAndAddSpinnerRow(view, lID, "Resolução", res,
                                     (int)SavedDataStore.SelectedResolution, (o, e, re) =>
            {
                switch (re.SelectedItemPosition)
                {
                case 0:
                    SavedDataStore.SelectedResolution = SaveData.CaptureResolution.Res480p;
                    break;

                case 1:
                    SavedDataStore.SelectedResolution = SaveData.CaptureResolution.Res720p;
                    break;

                case 2:
                    SavedDataStore.SelectedResolution = SaveData.CaptureResolution.Res1080p;
                    break;

                case 3:
                    SavedDataStore.SelectedResolution = SaveData.CaptureResolution.Res2160p;
                    break;
                }
            });

            s.CreateAndAddSpinnerRow(view, lID, "Frames por Segundo (FPS)", fps,
                                     (int)SavedDataStore.SelectedFPS, (o, e, re) =>
            {
                switch (re.SelectedItemPosition)
                {
                case 0:
                    SavedDataStore.SelectedFPS = SaveData.CaptureFPS.FPS15;
                    break;

                case 1:
                    SavedDataStore.SelectedFPS = SaveData.CaptureFPS.FPS30;
                    break;

                case 2:
                    SavedDataStore.SelectedFPS = SaveData.CaptureFPS.FPS60;
                    break;

                case 3:
                    SavedDataStore.SelectedFPS = SaveData.CaptureFPS.FPS120;
                    break;
                }
            });


            s.CreateAndAddLabelBoxRow(view, lID, "DETECTORES");

            s.CreateAndAddDescriptionRow2(view, lID, "Selecione o Detector desejado conforme sua necessidade. Você também pode " +
                                          "habilitar ou desabilitar a reprodução de som e vibração ao encontrar um objeto válido.");

            var options = new[] { "Modelos de Motocicletas", "Objetos em Geral" };

            s.CreateAndAddSpinnerRow(view, lID, "Detector", options, (int)SavedDataStore.SelectedDetector, (o, e, re) =>
            {
                switch (re.SelectedItemPosition)
                {
                case 0:
                    SavedDataStore.SelectedDetector = SaveData.DetectorType.MotorcycleModels;
                    break;

                case 1:
                    SavedDataStore.SelectedDetector = SaveData.DetectorType.Objects;
                    break;
                }
            });

            s.CreateAndAddCheckBoxRow(view, lID, "Vibrar", SavedDataStore.Vibrate, (o, e, be) =>
            {
                SavedDataStore.Vibrate = be.Checked;
            });
            s.CreateAndAddCheckBoxRow(view, lID, "Reproduzir Som", SavedDataStore.PlaySound, (o, e, be) =>
            {
                SavedDataStore.PlaySound = be.Checked;
            });

            s.CreateAndAddSpinnerRow(view, lID, "Velocidade de Análise (FPS)", dfps,
                                     (int)SavedDataStore.DetectionFPS, (o, e, re) =>
            {
                switch (re.SelectedItemPosition)
                {
                case 0:
                    SavedDataStore.DetectionFPS = SaveData.DetectorFPS.FPS1;
                    break;

                case 1:
                    SavedDataStore.DetectionFPS = SaveData.DetectorFPS.FPS5;
                    break;

                case 2:
                    SavedDataStore.DetectionFPS = SaveData.DetectorFPS.FPS10;
                    break;

                case 3:
                    SavedDataStore.DetectionFPS = SaveData.DetectorFPS.FPS15;
                    break;

                case 4:
                    SavedDataStore.DetectionFPS = SaveData.DetectorFPS.FPS30;
                    break;

                case 5:
                    SavedDataStore.DetectionFPS = SaveData.DetectorFPS.FPS60;
                    break;
                }
            });

            s.CreateAndAddLabelBoxRow(view, lID, "SOBRE");

            s.CreateAndAddButtonRow(view, lID, "Sobre o MotoDetector", (o, e, b) =>
            {
                var alert2 = new AlertDialog.Builder(this);
                var view2  = new AboutView(this);
                alert2.SetView(view2);
                alert2.SetCancelable(false);
                alert2.SetPositiveButton("OK", (sender, e2) =>
                {
                });
                alert2.Create().Show();
            });

            alert.SetCancelable(true);
            alert.SetNegativeButton("CANCELAR", (sender, e2) => { });
            alert.SetPositiveButton("OK", (sender, e2) =>
            {
                SavedDataStore.Save();
                UpdateCameraSettings();
                RunOnUiThread(() =>
                {
                    ConfigureCapture();
                });
            });
            alert.Create().Show();
        }
Пример #2
0
        private void DisplayMotoDetails()
        {
            if (DetectedPlate == "" && DetectedMotoModel == "")
            {
                return;
            }

            var alert = new AlertDialog.Builder(this);
            var view  = new BlankView(this);

            alert.SetView(view);

            var lID = Resource.Id.BlankLayoutContainer;

            if (DetectedPlate != "")
            {
                s.CreateAndAddLabelBoxRow(view, lID, "VERIFICAR PLACA");
                s.CreateAndAddLabelBoxRow(view, lID, "Placa: " + DetectedPlate);
                s.CreateAndAddDescriptionRow2(view, lID, "Insira a placa detectada nos campos abaixo para verificar marca, modelo e outras informações do veículo.");

                s.CreateAndAddDescriptionRow2(view, lID, "");

                var url = "https://cidadao.sinesp.gov.br/sinesp-cidadao/";

                var web = new Android.Webkit.WebView(this);

                web.LoadUrl(url);

                LinearLayout.LayoutParams param2 = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MatchParent, ViewGroup.LayoutParams.WrapContent, 1.0f);
                param2.LeftMargin   = (int)(5 + 0.5f);
                param2.RightMargin  = (int)(5 + 0.5f);
                param2.TopMargin    = (int)(5 + 0.5f);
                param2.BottomMargin = (int)(5 + 0.5f);
                param2.Weight       = 1.0f;

                web.LayoutParameters = param2;

                var layout = view.FindViewById <LinearLayout>(lID);

                layout.AddView(web);
            }
            else
            {
                if (MotosList.ContainsKey(DetectedMotoModel))
                {
                    s.CreateAndAddLabelBoxRow(view, lID, "INFORMAÇÕES");

                    var moto = MotosList[DetectedMotoModel];

                    s.CreateAndAddDescriptionRow(view, lID, "Fabricante", moto.Fabricante);
                    s.CreateAndAddDescriptionRow(view, lID, "Modelo", moto.Modelo);
                    s.CreateAndAddDescriptionRow(view, lID, "Ciclo", moto.Ciclo);
                    s.CreateAndAddDescriptionRow(view, lID, "Cilindrada (cm3)", moto.Volume);
                    s.CreateAndAddDescriptionRow(view, lID, "Potência (cv)", moto.Potencia);
                    s.CreateAndAddDescriptionRow(view, lID, "Peso (kg)", moto.Peso);
                    s.CreateAndAddDescriptionRow(view, lID, "Peso/Potência (kg/cv)", moto.Peso_Pot);
                    s.CreateAndAddDescriptionRow(view, lID, "Comprimento (mm)", moto.Comprimento);
                    s.CreateAndAddDescriptionRow(view, lID, "Largura (mm)", moto.Largura);
                    s.CreateAndAddDescriptionRow(view, lID, "Altura (mm)", moto.Altura);
                    s.CreateAndAddDescriptionRow(view, lID, "Altura do Assento (mm)", moto.Altura_Assento);
                }
            }

            alert.SetCancelable(true);
            alert.SetPositiveButton("OK", (sender, e2) =>
            {
            });
            alert.Create().Show();
        }