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; }