async void Handle_GetDrinks(object sender, System.EventArgs e)
        {
            var selectedItem  = (MenuItem)sender;
            var selectedDrink = (Drink)selectedItem.CommandParameter;
            //DisplayAlert("the id is",selectedDrink.idDrink,"ok");//error check
            string drinkApi = "https://www.thecocktaildb.com/api/json/v1/1/lookup.php?i=" + selectedDrink.idDrink;//search by name

            var uri     = new Uri(drinkApi);
            var dclient = new HttpClient();

            //Drink ddata = new Drink();
            dRootObject         ddata     = new dRootObject();
            HttpResponseMessage dresponse = await dclient.GetAsync(uri);

            if (dresponse.IsSuccessStatusCode)
            {
                var jsonContent = await dresponse.Content.ReadAsStringAsync();

                //ddata = JsonConvert.DeserializeObject<Drink>(jsonContent);
                ddata = JsonConvert.DeserializeObject <dRootObject>(jsonContent);
                //DisplayAlert("the ddata id is", ddata.drinks[0].idDrink, "ok");
            }
            else
            {
                //DisplayAlert("ERROR", "DIDNT WORK", "ok");
            }
            //DisplayAlert("the ddata id is", ddata.idDrink, "ok");

            await Navigation.PushAsync(new drinkMoreInfo(ddata));
        }
        async void DrinksSearchBar_SearchButtonPressed(object sender, EventArgs e)
        {
            Analytics.TrackEvent("SearchDrink");
            actIndA.IsVisible = true;
            actIndA.IsRunning = true;

            string word     = DrinksSearchBar.Text.ToLower();
            string drinkApi = "https://www.thecocktaildb.com/api/json/v1/1/search.php?s=" + word;//search by name

            var Uri     = new Uri(drinkApi);
            var dclient = new HttpClient();

            dRootObject drinksData = new dRootObject();

            HttpResponseMessage dresponse = await dclient.GetAsync(Uri);

            if (dresponse.IsSuccessStatusCode)
            {
                var jsonContent = await dresponse.Content.ReadAsStringAsync();

                if (jsonContent == "{\"drinks\":null}")
                {
                    await DisplayAlert("ERROR", word + " was not found", "OK");

                    actIndA.IsVisible = false;
                    actIndA.IsRunning = false;
                    return;
                }
                drinksData = JsonConvert.DeserializeObject <dRootObject>(jsonContent);
            }
            else
            {
                await DisplayAlert("ERROR", "json request failed", "OK");
            }
            actIndA.IsVisible          = false;
            actIndA.IsRunning          = false;
            drinksListView.ItemsSource = new ObservableCollection <Drink>(drinksData.drinks);
        }
        public drinkMoreInfo(dRootObject drank)
        {
            InitializeComponent();
            drinkNameLabel.Text = drank.drinks[0].strDrink;
            drinkimg.Source     = drank.drinks[0].strDrinkThumb;
            drinkLabel.Text     = "Instructions: " + drank.drinks[0].strInstructions;

            var ingredList  = new ObservableCollection <drinkIngredient>();
            var ingredient1 = new drinkIngredient
            {
                Name   = drank.drinks[0].strIngredient1,
                Amount = drank.drinks[0].strMeasure1,
            };
            var ingredient2 = new drinkIngredient
            {
                Name   = drank.drinks[0].strIngredient2,
                Amount = drank.drinks[0].strMeasure2,
            };
            var ingredient3 = new drinkIngredient
            {
                Name   = drank.drinks[0].strIngredient3,
                Amount = drank.drinks[0].strMeasure3,
            };
            var ingredient4 = new drinkIngredient
            {
                Name   = drank.drinks[0].strIngredient4,
                Amount = drank.drinks[0].strMeasure4,
            };
            var ingredient5 = new drinkIngredient
            {
                Name   = drank.drinks[0].strIngredient5,
                Amount = drank.drinks[0].strMeasure5,
            };
            var ingredient6 = new drinkIngredient
            {
                Name   = drank.drinks[0].strIngredient6,
                Amount = drank.drinks[0].strMeasure6,
            };
            var ingredient7 = new drinkIngredient
            {
                Name   = drank.drinks[0].strIngredient7,
                Amount = drank.drinks[0].strMeasure7,
            };
            var ingredient8 = new drinkIngredient
            {
                Name   = drank.drinks[0].strIngredient8,
                Amount = drank.drinks[0].strMeasure8,
            };
            var ingredient9 = new drinkIngredient
            {
                Name   = drank.drinks[0].strIngredient9,
                Amount = drank.drinks[0].strMeasure9,
            };
            var ingredient10 = new drinkIngredient
            {
                Name   = drank.drinks[0].strIngredient10,
                Amount = drank.drinks[0].strMeasure10,
            };
            var ingredient11 = new drinkIngredient
            {
                Name   = drank.drinks[0].strIngredient11,
                Amount = drank.drinks[0].strMeasure11,
            };
            var ingredient12 = new drinkIngredient
            {
                Name   = drank.drinks[0].strIngredient12,
                Amount = drank.drinks[0].strMeasure12,
            };
            var ingredient13 = new drinkIngredient
            {
                Name   = drank.drinks[0].strIngredient13,
                Amount = drank.drinks[0].strMeasure13,
            };
            var ingredient14 = new drinkIngredient
            {
                Name   = drank.drinks[0].strIngredient14,
                Amount = drank.drinks[0].strMeasure14,
            };
            var ingredient15 = new drinkIngredient
            {
                Name   = drank.drinks[0].strIngredient15,
                Amount = drank.drinks[0].strMeasure15,
            };

            //adds all the ingredients into the list
            ingredList.Add(ingredient1);
            ingredList.Add(ingredient2);
            ingredList.Add(ingredient3);
            ingredList.Add(ingredient4);
            ingredList.Add(ingredient5);
            ingredList.Add(ingredient6);
            ingredList.Add(ingredient7);
            ingredList.Add(ingredient8);
            ingredList.Add(ingredient9);
            ingredList.Add(ingredient10);
            ingredList.Add(ingredient11);
            ingredList.Add(ingredient12);
            ingredList.Add(ingredient13);
            ingredList.Add(ingredient14);
            ingredList.Add(ingredient15);


            ingredientLabel.Text = "Ingredients";
            //drinkList.ItemsSource = new ObservableCollection<string>(ingredList);
            drinkList.ItemsSource = ingredList;
            dateModLabel.Text     = "Date Modified: " + drank.drinks[0].dateModified;
        }